在当前版本的Spring Security中是否可以为PKCE身份验证创建授权服务器?
我做了研究,发现了这个授权服务器项目https://github.com/spring-projects-experimental/spring-authorization-server,但是该项目没有可用的示例。
我还发现spring建议将Keycloak用作授权服务器,但不适合我的情况。 我们需要能够针对远程服务获取并验证用户,然后仅将授权服务器用于生成和验证jwt令牌。据我所知Keycloak还应该拥有用户权利吗?因此,最好的解决方案是自定义spring独立授权服务器。有可能吗?谢谢!
答案 0 :(得分:2)
据我所知,Spring框架还有一个授权服务器的实现。它是spring-security-oauth项目的一部分。但是该项目已进入维护模式。
根据此migration guide,将创建新的授权服务器项目(您已经找到)以更改旧解决方案。
从我的角度来看,现在有几种可能的选择:
答案 1 :(得分:2)
您可以看一下这个项目:CloudFoundry User Account and Authentication (UAA) Server。
UAA
是Cloud Foundry
的(Spring MVC)组件,但可以用作独立的OAuth2 server
。它可以支持外部身份验证服务。还有一个实现PKCE的请求请求:https://github.com/cloudfoundry/uaa/pull/939(尚未合并,但正在审核中)。
您可以在baeldung.com上找到有关如何使用UAA
的示例。