1

我试图弄清楚通过 web.config 配置sustainsys.saml2 以发送带有来自SP 的嵌入式签名的注销请求。我的理解是这种类型的 logoutrequest 是使用 http-post 绑定。查看我对 SP 元数据的初始设置,SP 与 http-redirect 绑定,如第一张图所示:

sp元数据中的singlelogoutservice

为什么我想与 http-post 绑定是由于某种原因,IDP(OKTA)在收到注销请求时以“authnfailed”响应。根据我们 MFA 团队的 OKTA 日志,它显示:

用户从应用程序中单点注销

失败:发行者不匹配

根据我们的 MFA 团队,他们是未签署注销请求。经过进一步讨论,IDP 期望签名嵌入到 logoutrequest xml 中,即 http-post。我可以确认 http-redirect 正在请求中发送签名。同时,他们提供的 IDP 元数据似乎可以处理 http-redirect,如第二张图片所示:

来自 IDP 元数据的单一服务

在我使用开发沙箱进行本地开发期间,我没有遇到 http-redirect 问题。这发生在我们的开发/单元测试网络服务器上。所有证书均已设置。我们正在使用来自 xml 文件的本地 IDP 元数据。我只是想尝试绑定 http-post 看看它是否解决了问题,只是似乎无法通过该绑定发送。这是sustainsys配置。

sustainsys web.config 配置

注意我正在为我们的 asp.net 网络表单应用程序使用sustainsys.saml2 httpmodule 设置。

在这个 SP/IDP 世界里,我还是个新手,但肯定学到了很多东西。任何帮助或建议将不胜感激。

4

1 回答 1

0

我也遇到了“发行者不匹配”失败。就我而言,它是“SP Issuer”配置设置。

SP Issuer — 应用程序的标识符。这可以是 ACS URL 或 SP 实体 ID。该值也包含在 SP 应用程序的 SLO 请求中发送的元数据中。

https://help.okta.com/en/prod/Content/Topics/Apps/Apps_Single_Logout.htm

我将其设置为 SP 实体 ID,这让 Okta 很高兴。

于 2020-10-23T12:20:42.230 回答