当前位置: 首页 > 知识库问答 >
问题:

SP发起的SSO与IDP发起的SSO的区别

乐正翰
2023-03-14

有人能给我解释一下SP启动的SSO和IDP启动的SSO之间的主要区别是什么,包括哪一个是结合ADFS OpenAM Federation实现单点登录的更好解决方案?

共有3个答案

郭思聪
2023-03-14

用户比尔:“嘿,吉米,给我看看那份报告”

警司吉米:“嘿,我还不知道你是谁。我们这里有一个流程,所以你先去和国际流离失所者鲍勃核实一下。我相信他。”

国内流离失所者鲍勃:“我看到吉米派你来的。请给我你的证件。”

用户比尔:“嗨,我是比尔。这是我的证件。"

鲍勃:“嗨,比尔。看起来你已经退房了。”

鲍勃的IdP:“嘿,吉米。这家伙比尔检查了,这里有一些关于他的额外信息。你可以在这里做任何你想做的事。”

SP吉米:“好的,很酷。看起来比尔也在我们的已知客人名单上。我会让比尔进来的。”

比尔用户:“嘿鲍勃。我想去吉米家。那边安保严密”。

IDP鲍勃:“嘿,吉米。我信任Bill他退房了,这里有一些关于他的额外信息。你在这里想做什么就做什么。"

SP吉米:“好的,很酷。看起来比尔也在我们的已知客人名单上。我会让比尔进来的。”

我在这里详细介绍,但仍然保持简单:https://jorgecolonconsulting.com/saml-sso-in-simple-terms/.

谭骏
2023-03-14

在IDP Init SSO(未经请求的Web SSO)中,联合过程由IDP向SP发送未经请求的SAML响应来启动。在SP Init中,SP生成一个AuthnRequest,作为联合过程的第一步发送给IDP,然后IDP使用SAML响应来响应。IMHO ADFSv2对SAML2的支持。0 Web SSO SP Init比其IDP Init支持更强大:与第三方Fed产品的集成(主要围绕对RelayState的支持),因此如果您有选择,您将希望使用SP Init,因为它可能会使ADFSv2的使用更加方便。

这里有一些简单的SSO描述,来自平联邦8.0入门指南,您可以浏览这些描述,这些描述也可能有所帮助-https://documentation.pingidentity.com/pingfederate/pf80/index.shtml#gettingStartedGuide/task/idpInitiatedSsoPOST.html

华煜祺
2023-03-14

IDP发起的SSO

从平联邦留档:-https://docs.pingidentity.com/bundle/pf_sm_supportedStandards_pf82/page/task/idpInitiatedSsoPOST.html

在这种情况下,用户登录到IdP并试图访问远程SP服务器上的资源。SAML断言通过HTTP POST传输到SP。

处理步骤:

  1. 一个用户已经登录到IdP。
  2. 用户请求访问受保护的SP资源。用户没有登录到SP站点。
  3. 可选地,IdP从用户数据存储中检索属性。
  4. IdP的SSO服务向浏览器返回超文本标记语言表单,其中包含包含身份验证断言和任何附加属性的SAML响应。浏览器自动将超文本标记语言表单发布回SP。

SP启动的SSO

来自PingFederate文档:-http://documentation.pingidentity.com/display/PF610/SP-InitiatedSSO——POST-POST

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

处理步骤:

>

  • 用户请求访问受保护的SP资源。请求被重定向到联合服务器以处理身份验证。
  • 联合服务器将超文本标记语言表单发送回浏览器,并从IdP发出SAML认证请求。超文本标记语言表单会自动发布到IdP的SSO服务。
  • 如果用户还没有登录到IdP站点,或者需要重新验证,IdP会询问凭据(例如,ID和密码),然后用户登录。
  • 关于用户的附加信息可以从用户数据存储中检索以包含在SAML响应中。(这些属性是作为IdP和SP之间的联合协议的一部分预先确定的)

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

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

  •  类似资料:
    • 我目前正在进行SP(服务提供商)发起的SSO。 IdP(身份提供者)是PingOne SP是我自己的应用程序 我们有IdP启动的SSO设置,一切都很正常。我们现在必须让它启动。 是否有任何可能的方法在PingOne中实现SP启动的SSO(作为IdP)。因为我没有找到任何实施这种方法的线索。 你们能帮帮我吗?

    • 我已经配置了OpenAM IdP和SP。我正在纠结于IdP发起的SSO URL和SP发起的SSO URL。我使用以下格式的IdP发起的单点登录网址。但是我得到错误< code >服务提供商ID为空。 http://testtestidam.com:8080/openam/idpssoinit?metaAlias=/realm1/idp 任何人都可以帮忙吗?

    • 如何从SAML响应中判断是SP启动的SSO还是IDP启动的SSO?是否有一个属性告诉我是谁发起了SSO? 例如,在这个StackOverflow问题中:SP发起的SSO和IDP发起的SSO之间的差异,他们讨论了差异,但没有谈论XML级别本身...... SAML响应如下所示:

    • 我是KeyClope的新手,正在尝试将其配置为SalesForce客户端的SAML IDP。IDP启动的SSO流工作正常。我被引导到Salesforce主页正确地进行身份验证。然而,SP启动的SSO给了我一个JSON输出,而不是KeyClope登录页面。 这是SalesForce重定向到的URL(屏蔽IP):http://10.99.xxx.xxx:8080/auth/realms/test?SA

    • 我已成功配置SAML SSO,其中OpenAM为SP,PingFederate为IDP,SP启动SSO并使用重定向后绑定。我正在使用kerberos适配器实现SSO。 但是,我无法将RelayState参数从OpenAM传递给PF,并在成功验证后将其作为SAML自动post表单的一部分取回。它总是重定向到OpenAM断言处理服务,即OpenAM/metalias/sp 我试过的事情- > SAML

    • 使用IdentityServer3,Kentor.AuthServices 0.19(带有OWIN中间件)和标准的MVC 4 WebApi 2应用程序,我们遵循了 https://github.com/KentorIT/authservices/blob/master/doc/IdentityServer3Okta.md 的说明,并且似乎我们成功实现了IDP启动的登录。 然而,当我们仔细观察这一点

    • 我从SAML基于服务提供商的SSO开始。由于用户必须在继续登录之前输入电子邮件,因此启动了一个状态变量并将其传递给SSO。它通过回调URL返回,因此再次进行检查以确保其正常。它可以抵御CSRF攻击。 现在IdP启动的SSO根本不允许我设置状态变量。登录从身份提供商开始,仅向应用提供一个认证令牌。我从一开始就不知道是哪个用户在进行身份验证。如果我删除状态变量检查,它也可能触发CSRF攻击。 我还在中

    • 启动登录时,Keycloak在请求中发送一个< code>relaystate参数。但是,在成功登录后,pingbean不会返回此< code>relaystate。 奇怪的是,如果我向平联邦请求URL添加参数,它会将此参数的值返回为。我错过了什么?