keycloak with spring Boot 版本等于或高于3.1.3

bd1hkmkf  于 2023-09-29  发布在  Spring
关注(0)|答案(2)|浏览(146)

有人可以帮助如何实现keycloak与Spring Boot 版本大于或等于3.1.3,因为我有一个项目与angular-keycloak-spring boot与版本小于3.0.0,我使用类KeycloakWebSecurityConfigurerAdapter在配置工作与keycloack,但问题是,这个类是不赞成的 Spring 启动大于或等于3.0.0,将不会有更多的支持,有人可以解释或为我提供一个指导或教程项目,我如何可以实现新的更新,提前感谢你。

gblwokeq

gblwokeq1#

要知道最新版本的spring-boot不支持WebSecurityConfigurerAdapterKeycloakWebSecurityConfigurerAdapter扩展这个WebSecurityConfigurerAdapter,我的意思是它被弃用了。
我建议你使用Spring Boot oAuth2 Resource Server Starter而不是org.keycloak:keycloak-spring-boot-starter,这里你将使用oAuth2.0资源服务器部分Depend on abstractions, not on concretions
还有一些很好的资源可以帮助你做到这一点:
Migration Guide
spring-security-without-the-websecurityconfigureradapter
欲了解更多细节和实施中的任何阻碍者,请随时提出新问题或在论坛上找到相关答案。

5t7ly7z5

5t7ly7z52#

我已经在另一个答案中公开了如何使用Keycloak配置OAuth2资源服务器(和OAuth2客户端)。
请注意,如果您的系统架构有一段时间没有更改,则可能没有遵循最新的建议。您的Angular应用程序不应该是一个“公共”OAuth2客户端,使用Bearer令牌将其请求授权给资源服务器。在你的服务器上应该有一个中间件(BFF):

  • 使用oauth2Login配置为OAuth2客户端
  • 在将请求转发到资源服务器之前,在会话中用访问令牌替换会话cookie(对OAuth2客户端的请求使用会话而不是令牌进行保护

我已经编写了a tutorial,用于将spring-cloud-gateway配置为Angular应用程序和配置为OAuth2(无状态)资源服务器的Spring REST API之间的BFF。

相关问题