我正在使用spring-security-saml2库根据SAML对我的用户进行身份验证。它工作得很好,但现在我只想检查用户是否使用该IdP进行了身份验证(并避免自动转发以要求用户提供凭据)。
用例是,我想添加其他自定义身份验证机制,并且只在所有机制都失败后才转到登录页面。因此,我想检查是否有活动的SAML会话,如果没有,则通过OAuth进行检查,如果没有在任何地方进行身份验证,则将用户转发到登录页面。
对于spring-security-saml2库,这是可能的吗?或者我必须派生/更改它吗?
发布于 2015-08-31 22:57:26
您可以同步SAML会话http://docs.oasis-open.org/security/saml/v2.0/saml-profiles-2.0-os.pdf。但是,如果您在从idp重定向(auhtn请求响应成功)之后创建自己的会话(具有较小的超时并重新设置每个请求的超时),则会更容易
发布于 2015-08-31 23:39:43
可以将isPassive属性添加到SAML身份验证请求中,以获得您正在寻找的行为。这是通过在WebSSOProfileOptions对象上调用setPassive(true)来控制的,如https://github.com/spring-projects/spring-security-saml/blob/master/core/src/test/java/org/springframework/security/saml/websso/WebSSOProfileHoKImplTest.java#L263中所示。
https://stackoverflow.com/questions/32314055
复制相似问题