我们遇到了同样的问题。我们有带有 ADFS 的 SP2010。在 iFrame 中,我们正在加载一个也配置为使用 ADFS 的外部应用程序。
如果我们在页面上放置一个,我们可以在不登录的情况下打开外部应用程序,因此 SingleSignOn 可以正常工作。
但是,如果我们在 iframe 中加载外部应用程序,我们会遇到问题。
如果我们运行 Fiddler 来查看进行了哪些调用,我们会看到“正常”的 adfs 流。当 adfs 通过重定向到外部应用程序的 url 返回时,提供的 FedAuth cookie 不包含在对外部应用程序的后请求中。由于外部应用程序没有收到 cookie,我们最终陷入了无限循环。
该问题是由 IE 将身份验证 cookie 视为第三方 cookie 引起的。它的安全设置阻止它将 cookie 添加到请求中。当我们将 IE 隐私设置更改为低(接受所有 cookie)时,一切正常。
有谁知道我们如何解决这个问题?