我开发了一个反应应用程序,我在其中使用 tableau-api 嵌入图形。我已经使用 Auth0 作为 SSO 为 tableau 配置了 SAML 身份验证。当我使用具有 tableau 访问权限的相同电子邮件 ID 使用 Auth0 登录时,tableau 允许我访问图形。到目前为止一切正常。现在的问题是,当我注销 auth0 时,Auth0 会话将终止,但 tableau 会话仍保持活动状态。因此,即使在注销 Auth0 后,我仍然可以访问画面图。我如何也可以在线注销该画面?
答案 0 :(得分:0)
问题:引用“现在的问题是,当我注销 auth0 时,Auth0 会话将终止,但 tableau 会话仍然处于活动状态。因此即使在注销后我仍然可以访问 tableau 图形Auth0 的。我怎样才能在线注销该画面?"
答案: 在您的 SSO 用例中,tableau 是 SAML 服务提供商(或依赖方),Auth0 是 SAML 身份提供商。
tableau 利用 Auth0 执行身份验证(或登录验证)。作为 SAML 身份提供者,Auth0 为 tableau 建立身份验证会话,然后将用户身份(或用户信息)联合到 tableau。 作为 SAML 服务提供商和 Web 应用程序,tableau 建立登录会话以在不确定的时间段(例如 1 小时或 8 小时)内保持会话处于活动状态。一旦会话处于活动状态,您仍然可以访问表格图。
SAML 身份提供商 Auth0 无法撤销由 tableau 建立的会话。因此,引用“当我注销 auth0 时,Auth0 会话将终止,但 tableau 会话仍保持活动状态。”
分辨率: 您需要为 tableau 创建一个注销按钮来执行以下两个任务:
(I) 删除tableau建立的session。
(II) 将单点注销请求发布到 Auth0 SLO API,以删除 tableau 的身份验证会话。 (或者,如果您不想开发 SLO 请求功能,您只需注销 Auth0 以删除所有 Web 应用程序的所有会话,包括 tableau。)
可以从Auth0 SAML身份提供者的元数据中找到SAML Single Logout (SLO) Service API,例如
<SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://tableau.auth0.com/idp/profile/SAML2/Redirect/SLO"/>
可以在下面的 GitHub 链接中找到 SAML 身份提供者的元数据示例。
答案 1 :(得分:0)
您需要做的是实现单点注销服务并对其进行配置以支持 idp 发起的注销。
然后当 idp 注销时,它会回调您的注销服务并提供有关从 idp 成功注销的信息。
然后您需要根据从 idp 收到的信息执行本地注销。
您需要在单点注销服务中包含这整个内容,并且需要在 idp(Auth0) 中注册它。