我是SAML-2世界的新手。我必须使用java为基于web的产品实现SAML-2。我的同事建议采用以下解决方案来实现SAML-2。
我只想讨论一下这是否有意义..。
场景A:自从SSO在他的公司实施以来,John首次登录
场景B: John想再次使用TMS,但是关闭了他的浏览器
我的问题--这是一种标准还是正确的方法?如果我们使用cookie来记住SAML令牌,那么如果用户清除cookie或不想保留cookie怎么办?在这种情况下,用户将被定向到登录页面每次..。
有什么资源吗?书籍或在线教程),我可以调查这个特定的目的?
请告诉我你的建议。
发布于 2014-01-04 20:43:21
您所描述的非常接近联邦登录在.NET平台上的工作方式。当第一次从Idp接收到SAML2票证时,就会读取该票证,但是在随后的请求中,并不涉及Idp,而是一个cookie。
但是,在.NET上,SAML2令牌没有存储在cookie中,而是以适合.NET应用程序的形式包含身份信息,以避免每次都必须重新解析和重新验证SAML2令牌。整个cookie是用只有服务器知道的密钥加密的,因此用户无法篡改它。
发布于 2014-04-18 11:46:18
在您的场景中,B-用户通常被重定向到IDP (如果IDP的会话仍处于活动状态,则自动登录而不需要任何用户交互),而不是重新使用cookie。在AFDS响应之后(步骤6),应用程序通常在HTTP会话中存储有关身份验证用户的信息,并在用户注销或关闭浏览器后清除所有信息。
但你的方法绝对可行。如果用户清除cookie,只需使用ADFS初始化一个新的SAML身份验证请求。这里的关键是,ADFS不应该要求用户对每个请求进行身份验证,但是只要ADFS会话仍然有效,它就应该立即返回带有SAML令牌的TMS,因此用户通常只需要偶尔进行一次身份验证。
https://stackoverflow.com/questions/20886735
复制相似问题