我正在实现一个 SAML 2.0 服务提供商,它使用 Okta 作为身份提供商。我想配置断言消费者服务 (ACS) URL,以便我的服务提供商应用程序中的 SAML 2.0 反映回断言中。
但是,我注意到 Okta 身份提供程序改为发送在 Okta 配置中配置的 SSO 端点,并忽略实际发送的 ACS。另外,我收到一个错误,也许来自 SP 的 ACS 与那里的元数据不匹配。
如果 ACS URL 不是向 IDP 发送短 ID 以使其反映在断言中的正确方式,那么还可以使用什么其他机制来实现此目的。
Example:
SP应用发送的SAML 2.0 SAMLRequest是:
断言_消费者_服务_url:
https://host.com:port/saml/consume? EntityId=N&myName=用户名
身份提供者上的配置具有元数据:
单点登录 URL:
https://host.com:port/saml/consume?entityId=N
请注意,myName 从一个请求到下一个请求都会发生变化,因为这是我们验证响应的 name_id 是否与发送的原始用户名匹配的方式。
另外,如果服务提供商有一种方法可以让身份提供商断言 SP 管理的名称(例如用户名),那么这就可以满足我们的需求。如何指定这一点?
Thanks
在 SAML 中,假定 ACS 对于 SP 是静态的。要将响应与原始 AuthnRequest 关联起来,您应该保存传出 AuthnRequest 的 ID,然后使用InResponseTo
收到的响应。
SP 可以向 AuthnRequest 添加主题,告诉 IdP 您想要验证哪个用户名。它在 3.4.1 节中定义SAML2 核心规范 http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)