【发布时间】:2021-01-27 08:05:10
【问题描述】:
我正在实现三种类型的身份验证机制,它们是 SAML 和两种自定义身份验证。那么,如何实现基于标头的过滤器,它将检测身份验证类型并将路由到适当的身份验证机制。
-
SAML:在 SAML 的情况下,如果 cookie 的密钥为saml,则必须进行 SAML 身份验证。在 SAML 身份验证中,每当用户登录时,我都会在浏览器中插入一个名为 saml 的 cookie,对于进一步的请求,我需要通过传递samlcookie 值来调用 REST API 并检查身份验证是否有效。 -
Custom authentication:如果 cookie 密钥具有token1或token2,则执行自定义身份验证,其中涉及通过传递令牌调用 Rest API 并检查用户是否有效。
我知道带有 Spring Security 的 SAML,但正如我在 SAML 中解释的那样,我们如何进行其余的 API 调用并实现一个过滤器来调用适当的身份验证机制,我们如何才能实现这一点。是否有任何参考可以帮助解决上述情况。
【问题讨论】:
-
您能否提供更多有关 SAML 身份验证的详细信息?我的意思是您要集成的第三个应用程序是什么等。
-
@Shakthifuture 在 SAML 中,如果 saml cookie/header 不存在,则必须登录,一旦登录成功,我将在浏览器中添加一个 cookie(会话索引)。因此,对于进一步的请求,我将收到 saml 令牌(即会话索引)。因此,在收到标头中的 saml 令牌后,我将通过传递 saml 令牌调用 REST API 并验证响应。这是我正在遵循的流程。我不想在服务器端维护会话(spring security 微服务应该是无状态的)。
标签: java spring spring-security saml