使用 Auth0 的 Tableau SAML 身份验证对用户进行身份验证,但不会从系统注销

时间:2021-06-24 10:35:57

标签: single-sign-on tableau-api saml auth0

我开发了一个反应应用程序,我在其中使用 tableau-api 嵌入图形。我已经使用 Auth0 作为 SSO 为 tableau 配置了 SAML 身份验证。当我使用具有 tableau 访问权限的相同电子邮件 ID 使用 Auth0 登录时,tableau 允许我访问图形。到目前为止一切正常。现在的问题是,当我注销 auth0 时,Auth0 会话将终止,但 tableau 会话仍保持活动状态。因此,即使在注销 Auth0 后,我仍然可以访问画面图。我如何也可以在线注销该画面?

2 个答案:

答案 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 身份提供者的元数据示例。

Shibboleth SAML IdP metadata

答案 1 :(得分:0)

您需要做的是实现单点注销服务并对其进行配置以支持 idp 发起的注销。

然后当 idp 注销时,它会回调您的注销服务并提供有关从 idp 成功注销的信息。

然后您需要根据从 idp 收到的信息执行本地注销。

您需要在单点注销服务中包含这整个内容,并且需要在 idp(Auth0) 中注册它。

相关问题