我正在研究基于SAML2.0的SSO集成。除了一件事外,我几乎可以做到端到端的集成。SP向IDP发送SAML authn请求,IDP用SAML authn响应返回。这里的IDP是CA Siteminder,SP是JBoss 5.1上的Picketlink。但是,应用程序本身(配置为SP)如何知道用户已经通过IDP进行身份验证。会自动发生吗?如何防止应用程序再次提示用户?我相信,我应该禁用我在我的申请中已经拥有的所有机制?这是真的吗,还是有别的办法?
发布于 2014-09-10 19:33:21
SP不知道用户是否有活动的IDP会话。如果没有本地SP会话,那么应用程序将向IDP发出AuthnRequest。如果用户已经在IDP上使用活动会话登录,那么IDP通常会生成一个新的SAML响应,供您的SP使用,而不会提示用户再次登录(因为他们有一个活动会话)。如果呈现AuthnRequest的用户没有活动会话,则由IDP正确地对用户进行身份验证并将SAML响应发送回SP。
这个流程假设您不具备SP应用程序的本地登录功能,用户的登录功能必须通过IDP。如果您有本地登录,那么它会变得更加复杂,试图找出哪些用户获得重定向,地点和时间的身份验证。
伊安
https://stackoverflow.com/questions/25149336
复制相似问题