我正在处理作为依赖方连接到 ADFS 的 Web 应用程序,以便与合作伙伴声明提供程序进行单点登录集成。这一切都通过 SAML(而不是 WS 联合)。Web 应用程序是 .NET 并使用 WIF SAML 扩展。所有这些都适用于 SSO。
不起作用的是单点注销到索赔提供者。我的应用程序通过 WIF 扩展正确重定向到带有 SAML 注销请求的https://adfs.example.com/adfs/ls,然后 ADFS 又在 /saml/redirect/sloresponse 重定向回我。这一切都很好,但永远不会发生任何上游到声明提供者(SAML 身份提供者)以从那里注销的情况。声明提供程序确实在其 SAML 元数据中发布了 SingleLogoutService,并且当声明提供程序直接将 SAML 与我的 Web 应用程序对话(中间没有 ADFS)时,它会起作用。
问题:
ADFS 是否完全支持上游 SAML 单点注销?在网上搜索我发现了一些神秘的笔记,但我找不到确切的来源。
如果不在 ADFS 2.0 中,是否在 ADFS 2.1 中?如有必要,我们可以升级到 Windows 2012。
如果不是 SAML,ADFS 可以使用 WSFederation 做到这一点吗?声明提供者信任和依赖方信任都需要 WSFed 吗?
如果根本不可能,是否有任何推荐的解决方法?也许直接重定向到声明提供程序并将 SAML 注销请求推送到 ADFS?
谢谢!