我们使用spring-security和PingOne作为IdP实现SAML。 我们遇到一个问题,当用户使用SSO登录应用程序,然后在IdP上禁用/删除时,他的会话不会终止,因此他可以继续使用该应用程序。 我已经覆盖了SAMLAuthenticationProvider身份验证方法,因此我在ExpiringUsernameAuthenticationToken上设置了截止日期(类似于如果IdP在断言中给出了SessionNotOnOrAfter值),但问题是用户刚刚从应用程序注销,而不是重新进行身份验证。
有没有办法检查用户是否仍然在IdP端有活动会话,并且只有在他的IdP会话无效时才将其注销?
答案 0 :(得分:0)
对于这种情况,SAML提供了'IsPassive' AuthnRequest的属性。如果设置为' true'这可以用于检查用户是否仍然具有与IdP的有效会话。那些被动的'可以定期触发AuthnRequests(例如,应用程序端会话超时)。