当前位置 : 主页 > 手机开发 > 其它 >

单点登录 – SAML如何解决SSO?

来源:互联网 收集:自由互联 发布时间:2021-06-19
在阅读了有关SAML的一些文章(包括“SAML for dummies”)和SAML wiki文章后,我仍然完全不清楚SAML如何实际解决SSO问题.假设我以Google帐户为例.我的理解是,如果我去GMail并实施SAML,我将被重定向到
在阅读了有关SAML的一些文章(包括“SAML for dummies”)和SAML wiki文章后,我仍然完全不清楚SAML如何实际解决SSO问题.假设我以Google帐户为例.我的理解是,如果我去GMail并实施SAML,我将被重定向到一个IDP,比方说,这是Google的登录权限.我的浏览器然后带着重定向到那里,我被要求登录.在提供正确的登录信息后,我返回GMail,并使用Google登录的私钥加密令牌和SAML响应,然后使用GMail进行身份验证公钥,从而证实我,事实上,我说的是我.

令我感到困惑的是,这似乎解决了第一次签名或单个应用程序的问题,但我不明白当我现在去Google Drive时会发生什么.即使我的浏览器将SAML令牌/响应保存为cookie,我也必须在令牌过期后再次登录,我读过,就像2分钟之后.此外,即使在同一个应用程序中,分离资源或端点的请求似乎也会以相同的方式超时.

我唯一的提示是,根据维基文章,第1步在SP检查中的目标资源检查“有效的安全上下文”.但是,如果GMail和Drive是不能相互通信的独立应用程序,Drive会如何知道我已经拥有有效的安全上下文?

问题:

>在初始身份验证之后,需要将哪些信息与将来的请求一起发送到相同或不同的应用程序/端点?例如,也许SAML断言保存并重新发送每个请求.
>如何保护/验证此信息?
>什么超时与SAML的SSO相关,以及SP和IDP两方的执行时间如何?

您缺少的是Idp(您的示例中的Google登录页面)在首次登录时设置了会话cookie.当您作为第二个应用程序访问Google驱动器时,它确实不知道gmail会话. Google云端硬盘会重定向到idp以获取身份验证.

现在,由于idp域上的cookie,idp具有活动会话.这使得idp可以使用从持久会话信息生成的新断言来回复Google驱动器.

你是对的,每个断言通常只有几分钟有效,但这不是问题,因为idp可以为每个应用程序创建一个新的断言.

对于超时:Idp可以在断言中设置SessionNotOnOrAfter条件,告诉SP它必须在给定时间终止会话.

网友评论