MicroStrategy ONE

配置 SameSite CookiesLibrary

开始于 MicroStrategy 2021 更新 7,您可以管理 SameSite Cookie Library 在工作站中。看 Chrome v80 Cookie 行为及其影响 MicroStrategy 部署 用于管理 SameSite cookie MicroStrategy 2021 更新 6 及更早版本。

SameSite 阻止浏览器随跨站点请求发送 cookie。主要目标是减轻跨源信息泄露的风险。它还提供针对跨站点请求伪造攻击的保护。可能的值如下:

  • 松弛 对于希望在用户从外部链接访问后维持用户登录会话的网站,在安全性和可用性之间提供合理的平衡。SameSite 的默认选项是 松弛,包括未选择任何选项的情况。

  • 严格的 阻止浏览器在所有跨站点浏览环境中将 cookie 发送到目标站点,即使是在遵循常规链接时也是如此。

  • 没有任何 允许在所有跨站点浏览环境中使用 cookie。

HTTPS 连接是 没有任何 选择。如果 SameSite cookie 属性设置为 没有任何,关联的 cookie 必须标记为安全。

SameSite 属性 没有任何 建议在以下场景使用:

  • 存在跨域兼容性问题。

  • MicroStrategy Web 和 MicroStrategy Library 部署在用户地址栏中显示的域以外的域中。

  • 您正在使用安全断言标记语言 (SAML)、OpenID Connect (OIDC) 和第三方身份验证。

Cookie 标志的变化取决于您的服务器:

由于应用服务器的限制,用户界面中的设置仅适用于 Tomcat 应用服务器上的 JSESSIONID cookie。

Tomcat Web 服务器

  1. 在 Workstation 中, 连接到 Library 环境 与管理员用户一起。

  2. 右键单击环境并选择 特性

  3. 在左侧窗格中,单击 Library 并向下滚动到 饼干 部分。

  4. 根据您的要求,选择适当的 SameSite 属性并单击 好的。默认情况下未选择 SameSite 属性。

  5. 重新启动 Library 服务器。

详细了解此对话框中的其他设置 查看和编辑 Library 管理设置

WebLogic Web 服务器

  1. 在 Workstation 中, 连接到 Library 环境 与管理员用户一起。

  2. 右键单击环境并选择 特性

  3. 在左侧窗格中,单击 Library 并向下滚动到 饼干 部分。

  4. 根据您的要求,选择适当的 SameSite 属性并单击 好的。默认情况下未选择 SameSite 属性。

  5. 在你的 MicroStrategy 部署,导航至 MicroStrategyLibrary\WEB-INF\weblogic.xml

  6. 编辑 weblogic.xml 并添加以下代码:

    复制
    <wls:session-descriptor>
    <wls:cookie-path>/;SameSite=NONE</wls:cookie-path>
    </wls:session-descriptor>
  7. 点击 节省 并重新启动Web服务器。

JBoss Web 服务器

仅 JBoss 7.3.3 及更新版本支持将 JSessionID cookie 的 Samesite 设置为 None。以下步骤使用 JBoss 7.3.7 进行测试。

  1. 在 Workstation 中, 连接到 Library 环境 与管理员用户一起。

  2. 右键单击环境并选择 特性

  3. 在左侧窗格中,单击 Library 并向下滚动到 饼干 部分。

  4. 根据您的要求,选择适当的 SameSite 属性并单击 好的。默认情况下未选择 SameSite 属性。

  5. 在 JBoss 中,导航到 jboss/standalone/configuration/standalone.xml

  6. 编辑 standalone.xml 并添加 <session-cookie http-only="true" secure="true"/> 如下所示,现有代码。

    复制
    <subsystem xmlns="urn:jboss:domain:undertow:10.0" default-server="default-server" default-virtual-host="default-host" default-servlet-container="default" default-security-domain="other" statistics-enabled="${wildfly.undertow.statistics-enabled:${wildfly.statistics-enabled:false}}">
                <buffer-cache name="default"/>
                <server name="default-server">
                    <http-listener name="default" socket-binding="http" redirect-socket="https" enable-http2="true"/>
                    <https-listener name="https" socket-binding="https" security-realm="ApplicationRealm" enable-http2="true"/>
                    <host name="default-host" alias="localhost">
                        <location name="/" handler="welcome-content"/>
                        <http-invoker security-realm="ApplicationRealm"/>
                    </host>
                </server>
                <servlet-container name="default">
                    <jsp-config/>
                    <session-cookie http-only="true" secure="true"/>
                    <websockets/>
                </servlet-container>
                <handlers>
                    <file name="welcome-content" path="${jboss.home.dir}/welcome-content"/>
                </handlers>
            </subsystem>
  7. 创建一个名为 undertow-handlers.conf 使用下面显示的代码并将其保存到 WEB-INF 文件夹 MicroStrategy Library 部署。

    复制
    samesite-cookie(mode=NONE)
  8. 重新启动 Web 服务器。