Spring Security OAuth2纯资源服务器
我们已经设置了OAuth2授权服务器,因此我需要创建相应的资源服务器(单独的服务器)。 我们计划使用Spring Security OAuth2项目。 他们用于设置资源服务器的文档:
https://github.com/spring-projects/spring-security-oauth/wiki/oAuth2#resource-server-configuration
token-services-ref
应该指向令牌处理bean。 然而,似乎令牌处理由服务器本身完成,即使它是资源服务器。 似乎没有任何远程令牌服务类或与远程服务器相关的任何配置。 这与CloudFoundary UAA( https://github.com/cloudfoundry/uaa/blob/master/samples/api/src/main/webapp/WEB-INF/spring-servlet.xml )形成对比,后者具有:
有没有办法将Spring Security OAuth2用于与单独的OAuth2授权服务器通信的资源服务器? 如何设置通信端点?
只要授权服务器和资源服务器访问共享tokenStore
(例如,使用带有公共dataSource
JdbcTokenStore
,这是可能的。 您可以使用DefaultTokenServices
以及对共享tokenStore
的引用。 下面是一个示例Spring配置,您应该能够调整以满足您的需求:
是的可能。 就像您在问题中已经提到的那样, RemoteTokenServices
就是解决方案。
我创建了一个具有单独的auth和资源服务器的示例。 它只是一个样本,可以快速了解概念并开放扩展。
弹簧AngularJS-的OAuth2单样本