我一直在阅读配置 IdP/SP 关系的各种方法,并与我设置 IdP 进行身份验证的供应商反复沟通。我们交换了元数据和实体 ID 和登录 URL 等基本信息,但当我在登录页面进行测试时,它失败了,因为它无法解析我们的 IdP URL。据我了解,SP 应该向我的浏览器发送重定向到 IdP,而不需要直接访问它。
我的问题围绕着这一理解:
- 作为 IdP,我是否应该能够将 SSO 设置为 SP-Initiated,使用重定向或 Post 方法,而无需 IdP 可供 SP 使用?
- 如果确实如此,我是否应该要求供应商或 SP 在他们那边查看一些东西,以便进行重定向而不检查我的 IdP URL?
- 如果不是这种情况,是否有其他 SAML 方法允许 SSO 工作而无需将 IdP 暴露给互联网?
答案1
用于向 IdP 发送 SAML 身份验证请求的最常用 SAML 绑定是 HTTP-Redirect 和 HTTP-Post。这两者都涉及通过浏览器发送身份验证请求。没有直接的站点到站点通信。如果用户可以浏览到您的 IdP 的单点登录服务 URL,则 SP 应该能够发送身份验证请求。
我不确定 SP 认为什么是有效的 URL。大概这个 URL 是在您的 IdP 元数据中指定的。也许他们有超出此范围的其他限制。您需要向他们询问更多详细信息,以及他们施加的任何限制是否可以放宽。
IdP 必须能够被浏览器访问。如果用户位于某个内部网上,只要他们能够浏览 IdP 的 URL,他们就应该能够进行 SSO。