我正在尝试找到我需要实现的类,以便使用@EnableResourceServer
注释并与我们的自定义OAuth2服务器和令牌存储进行交互。
目标是将其打包为库并与其他服务共享。所以基本上我需要实现:
/check_token
),因为我们使用的是JWT,我们可以确保令牌已正确签名。到目前为止,我已经看过以下课程:
但是由于我无法找到太多的文档,我想知道我是否有点丢失或者这些类不是要被覆盖的,而且创建自定义逻辑并不依赖于@EnableResourceServer
。
答案 0 :(得分:1)
我相信你可能想要开始寻找的地方是ResourceServerSecurityConfigurer
和ResourceServerConfigurerAdapter
。这遵循与WebSecurityConfigurerAdapter
类似的编程模型,并将为您提供可配置内容的上下文。
从那里开始,请查看ResourceServerTokenServices
和TokenStore
获取第1,3,4和5点。
现在,关于#2,因为您还希望让应用程序刷新令牌,听起来您可能想要创建两个库,一个用于想要使用OAuth2(@EnableResourceServer
)授权请求的服务,一个用于要解决这些资源服务器的服务(@EnableOAuthClient
)。在这种情况下,请查看OAuth2RestTemplate
和ClientTokenServices
。
另外,如果您还没有,请查看http://projects.spring.io/spring-security-oauth/docs/oauth2.html,因为这是我从上面提取大部分内容的地方。
https://github.com/spring-projects/spring-security-oauth/tree/master/samples/oauth2上有一些示例您可能会在资源服务器端找到帮助,特别是https://github.com/spring-projects/spring-security-oauth/blob/master/samples/oauth2/sparklr/src/main/java/org/springframework/security/oauth/examples/sparklr/config/OAuth2ServerConfig.java
有一个客户端示例希望有所帮助!