首页 文章

spring security sso浏览器

提问于
浏览
0

我使用Spring Security和Spring OAuth2作为用户注册的身份验证服务器 . 但我想改变运行时用户的角色 . 但我在网上看过Keycloak,但我们不能简单地用 Spring 天 . 你有推荐的人,也给Keycloak?

1 回答

  • 0

    我不完全确定我理解 . 但是,如果您要问是否可以通过从其他来源加载角色来修改在Spring Security受保护客户端中从Keycloak返回的角色,那么回答是肯定的,但有一点需要注意 .

    您可以扩展 KeycloakAuthenticationProvider 以在将身份验证存储到Spring Security上下文之前修改身份验证 . 看一下KeycloakUserDetailsAuthenticationProvider的灵感 .

    需要注意的是,这些修改仅限于当前客户端 . 您无法以这种方式修改访问令牌中的角色,并使用它来调用其他服务 . 如果这是您的意图,您可能希望扩展Keycloak服务器中的一个SPI . 这是一种更复杂的方法,但访问令牌可以跨服务使用 .

相关问题