【问题标题】:who will set saml cookie which consists of credential info谁将设置包含凭据信息的 saml cookie
【发布时间】:2017-10-04 04:04:51
【问题描述】:

我正在浏览 SAML 文档。考虑 applicatin1 将发送登录请求,它会联系 IDP 进行身份验证,并由 Idp 对用户进行身份验证。 假设我是第一次登录,在这种情况下 IDP 要求输入用户名密码,它会保存用户名密码,下次它不会要求输入用户名密码。

我有以下疑问。

  1. 由于在 saml 中不同的应用程序可以使用相同的用户名密码登录,IDP 如何保存用户名和密码,我读它存储在 cookie 中,但 cookie 仅限于一个应用程序,我们不能在不同的应用程序之间传递 cookie。如何处理?

  2. 我们是否需要编写代码来创建cookie来保存用户名密码,或者saml /idp api会处理它。

【问题讨论】:

    标签: java single-sign-on saml adfs idp


    【解决方案1】:

    当我开发 SAML IdP 时,登录信息存储在一个 cookie 中,每当用户返回 IdP 时,该 cookie 都会被解析。例如用户转到 SP1,被重定向到 IdP,使用用户名/密码登录,IdP 为其自己的域设置 cookie,将用户重定向到 SP1。用户然后转到 SP2,被重定向到 IdP。 IdP 看到 cookie,解析用户,会话尚未过期,因此从会话加载用户信息并将用户重定向到 SP2。

    这不是 IdP 如何记住用户的重要部分(它可以这样做,但它喜欢,因为 SP 永远不会看到登录)。重要的是 IdP 发送给 SP 的属性。因此,同一个用户登录可能会导致从同一个 IdP 登录事件向 SP1 和 SP2 发送完全不同的属性。

    在 SP 中,应用程序如何处理属性取决于应用程序。例如,它可以创建一个 JSESSIONID 并将来自 IdP 的 SAML 断言挂在其上。如果用户在 JSESSIONID 超时内返回,SP 将只使用这些属性。如果超时已超出,SP 会将用户重定向到 IdP,但如果 IdP cookie 没有过期,则用户无需再次登录 IdP,属性将被静默发送到 SP。

    【讨论】:

      猜你喜欢
      • 2019-11-19
      • 1970-01-01
      • 2021-02-20
      • 1970-01-01
      • 1970-01-01
      • 2021-04-17
      • 2013-10-17
      • 2012-12-07
      • 1970-01-01
      相关资源
      最近更新 更多