![带有 AD FS 3.0 的 Google Apps 退出问题](https://linux22.com/image/702720/%E5%B8%A6%E6%9C%89%20AD%20FS%203.0%20%E7%9A%84%20Google%20Apps%20%E9%80%80%E5%87%BA%E9%97%AE%E9%A2%98.png)
我们有一个 Google Apps 帐户,用于大部分工作。我们还使用 AD FS 3.0 作为 SSO 提供程序来验证用户身份。登录过程一切顺利。但是,退出时,一切都崩溃了。
我很久以前就按照指南进行了设置,并使用以下方法验证了设置本指南并检查了其他一些设置,应该是正确的。
从 Google 页面退出时,我们会被重定向到 AD FS 退出网址(https://<domainname>/adfs/ls/?wa=wsignout1.0)
,然后收到一条消息,提示“您已成功退出”。但是,返回 Google 的自定义登录网址后,(mail.domainname)
我们会直接重新登录 Google,就像我们没有点击退出按钮一样。
我进行了一些调查,显然这是一个更大的问题。 Google 产品论坛上的这篇文章有和我遇到的完全相同的问题,有人建议联系 Google 支持。在与 Google 支持人员通话约一小时后,他们认为问题出在我们的 AD FS 服务器运行某种脚本,导致我们保持登录状态,我应该联系我们的 Web 开发人员...
问题出在 AD FS 的某个地方,但我似乎无法弄清楚,希望有人遇到过同样的问题并能够提供一些指导。
答案1
这里的问题是,Google 没有向您提供适当的指导,告诉您如何配置支持 SAML 的 IDP(例如 AD FS)以与 Google 应用联合。
您不应使用 adfs/ls/?wa=wsignout1.0,因为这是您使用 ws-federation 协议启动签名的方式。您正在混合使用 wsfed 和 SAML。请参阅http://docs.oasis-open.org/wsfed/federation/v1.2/ws-federation.html有关 wsfed signout 语法的更多详细信息。/adfs/ls 是处理 wsfed 和 SAML 的 AD FS 被动端点。
我期望谷歌提供一些类似的建议https://docs.microsoft.com/en-us/azure/active-directory/active-directory-saas-google-apps-tutorial(但对应AD FS)如何配置AD FS端。https://support.google.com/a/answer/60224?hl=en似乎相关,但我没有看到他们清楚地说明登录/退出 URL 和支持的相关绑定(发布与重定向)或 google federation 元数据来从中收集该信息。据我所知,没有可用的 SAML 单点注销支持。如果有,文档不容易找到。
您需要 Google 向 /adfs/ls 发送 SAML 注销请求,同样,您需要在 Google 应用上配置一个 URL,以便发送 SAML 注销响应。并且该注销响应不会发送到 /adfs/ls/?wa=wsignout1.0。Google 应该能够回答这个问题。
我不是 Google 应用方面的专家,因此无法再发表评论。假设您从 Google 获得付费支持,则应尝试在 Google 支持中升级以获得更好的答案。