single-sign-on - SP 发起的 SSO 和 IDP 发起的 SSO 之间的差异

标签 single-sign-on adfs2.0 openam

谁能向我解释一下SP发起的SSOIDP发起的SSO之间的主要区别是什么,包括哪一个是联合实现单点登录的更好解决方案与 ADFS + OpenAM 联盟?

最佳答案

IDP 启动 SSO

来自 PingFederate 文档:- https://docs.pingidentity.com/bundle/pf_sm_supportedStandards_pf82/page/task/idpInitiatedSsoPOST.html

在此场景中,用户登录到 IdP 并尝试访问远程 SP 服务器上的资源。 SAML 断言通过 HTTP POST 传输到 SP。

处理步骤:

  1. 用户已登录 IdP。
  2. 用户请求访问 protected SP 资源。用户未登录 SP 站点。
  3. (可选)IdP 从用户数据存储中检索属性。
  4. IdP 的 SSO 服务向浏览器返回一个 HTML 表单,其中包含包含身份验证断言和任何其他属性的 SAML 响应。浏览器自动将 HTML 表单发送回 SP。

SP 发起 SSO

来自 PingFederate 文档:- http://documentation.pingidentity.com/display/PF610/SP-Initiated+SSO--POST-POST

在这种情况下,用户在未登录的情况下尝试直接访问 SP 网站上的 protected 资源。用户在 SP 站点上没有帐户,但拥有由第三方 IdP 管理的联合帐户。 SP 向 IdP 发送身份验证请求。请求和返回的 SAML 断言均通过 HTTP POST 通过用户浏览器发送。

处理步骤:

  1. 用户请求访问 protected SP 资源。请求被重定向到联合服务器以处理身份验证。
  2. 联合服务器将 HTML 表单发送回浏览器,其中包含来自 IdP 的身份验证 SAML 请求。 HTML 表单会自动发布到 IdP 的 SSO 服务。
  3. 如果用户尚未登录 IdP 网站或需要重新进行身份验证,IdP 会要求用户提供凭据(例如 ID 和密码),然后用户登录。
  4. 可以从用户数据存储中检索有关用户的其他信息,并将其包含在 SAML 响应中。 (这些属性是作为 IdP 和 SP 之间联合协议(protocol)的一部分预先确定的)

  5. IdP 的 SSO 服务将 HTML 表单返回给浏览器,其中包含包含身份验证断言和任何其他属性的 SAML 响应。浏览器自动将 HTML 表单发送回 SP。 注意:SAML 规范要求对 POST 响应进行数字签名。

  6. (未显示)如果签名和断言有效,SP 将为用户建立 session 并将浏览器重定向到目标资源。

关于single-sign-on - SP 发起的 SSO 和 IDP 发起的 SSO 之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12779532/

相关文章:

single-sign-on - 如何将 openam 配置为身份提供者 (IdP) 以测试基于 SAML 的 SSO

azure - 将 Microsoft(个人和工作 Azure AD)OIDC 集成到 AWS Cognito

single-sign-on - 如何在 bluemix 中使用 SSOCircle 作为 SSO 服务的 IDP?

ruby-on-rails - Rails session 和 SiteMinder/SSO

single-sign-on - 使用 ADFS 实现单点登录

exchangewebservices - 带有 EWS API 的 SAML

Django Microsoft 身份验证后端在新部署中未成功

asp.net - 将 ADFS token 传递给服务

在我为 OpenAM 部署 Tomcat 策略代理后,Tomcat 服务器未启动

java - Java 同步块(synchronized block)内出现意外状态