1

我的要求是使用 spring boot 实现 oauth 2。

它用于将动态客户端注册(客户端 ID、客户端密码……)存储在数据库中,而不是存储在内存中。

我看到的第一个选项是使用 spring-security-oauth2。但根据文档 https://spring.io/projects/spring-security-oauth
它说 Spring Security OAuth 已被弃用,最新的 OAuth 2.0 支持由 Spring Security 提供。

不推荐使用 Spring Security OAuth 我不会将它用于我当前的实现。

现在我现在的选择是从 Spring Security 中使用它。Bu 根据文档https://github.com/spring-projects/spring-security/wiki/OAuth-2.0-Migration-Guide 它说 Spring Security 不提供授权服务器支持。

现在,我很困惑,要么使用已弃用的 Spring Security OAuth,要么等待 Spring Security 提供授权服务器支持。我想听听专家的建议。有没有没有 Spring Security OAuth 的教程来实现它?

4

1 回答 1

0

有一个创建 Spring Security 新授权服务器的新项目:https ://github.com/spring-projects-experimental/spring-authorization-server 但是距离完成还有很长的路要走。

我收集到,因为您只将使用“客户端凭据”授权,您可以使用已弃用的授权服务器,我将它用于小型内部应用程序,适用于简单的用例,而且它非常可定制。例如项目:https ://github.com/wlesniak/effective-oauth2-with-spring-security-and-spring-boot/tree/master/module_4

您的另一个选择,特别是如果您想使用 OpenID 连接和最新的 Oauth 功能,将是第 3 方身份验证服务器,例如:keycloak 它的开源,由 Red Hat 开发,所有花里胡哨的伟大产品,并且有很好的春天支持,易于配置。

于 2020-07-14T11:04:59.797 回答