Spring boot 避免在spring Oauth2中使用JDBCTokenStore

Spring boot 避免在spring Oauth2中使用JDBCTokenStore,spring-boot,spring-security-oauth2,Spring Boot,Spring Security Oauth2,我正在创建一个SpringOATH2应用程序。它起作用了。我有一个疑问 基于此URL,只有两种实际选项: JdbcTokenStore,JwtTokenStore 是否可以使用JDBCTokenStore,但不在resourceServers中引用它? 我的意思是,我们不能只在AuthorizationServer中直接引用它,资源服务器可以使用AuthorizationServer中的端点,而不是配置另一个直接的JDBCTokenStore引用 动机:希望避免在AuthorizationSer

我正在创建一个SpringOATH2应用程序。它起作用了。我有一个疑问

基于此URL,只有两种实际选项: JdbcTokenStore,JwtTokenStore

是否可以使用JDBCTokenStore,但不在resourceServers中引用它? 我的意思是,我们不能只在AuthorizationServer中直接引用它,资源服务器可以使用AuthorizationServer中的端点,而不是配置另一个直接的JDBCTokenStore引用

动机:希望避免在AuthorizationServer和多个ResourceServer之间共享数据库。有没有其他方法来实现这一动机


R

您可以在资源服务器中使用。此类查询授权服务器中存在的/check_令牌端点以验证令牌

您可以有一个仅用于身份验证服务器的数据库和另一个用于资源服务器的数据库

<bean id="tokenServices" class="org.springframework.security.oauth2.provider.token.RemoteTokenServices">
    <property name="checkTokenEndpointUrl" value="${auth.service.url:https://localhost:8443/auth-service}/oauth/check_token"/>
    <property name="clientId" value="${auth.client.name:TEST_API}"/>
    <property name="clientSecret" value="${auth.client.secret:password}"/>
    <property name="accessTokenConverter" ref="accessTokenConverter"/>
    <property name="restTemplate" ref="oauth2RestTemplate"/>
</bean>

听起来太完美了。谢谢我会设法回去的。我认为这消除了ResourceServices在其数据库中保存任何oauth/jwt信息的需要。事实上,资源设备现在只能在其功能需要数据库时使用数据库。对吗?