【发布时间】:2018-12-14 05:30:46
【问题描述】:
我想要一组服务,可与“客户端凭据”(用于机器对机器)和 OAuth2 单点登录一起用于常规 web 应用程序(由同一应用程序提供服务)。
我尝试同时设置@EnableOAuth2Sso 和@EnableResourceServer;我希望应用程序“尝试”基于令牌,然后回退到 SSO 重定向,以防它找不到任何内容并且用户没有会话。
每个配置都可以自己正常工作(带有:
@Bean
public RemoteTokenServices ...
供@EnableResourceServer 配置“CheckTokenEndpointUrl”)。
但只要我尝试两者,我都会得到:
应用程序启动失败
说明:
org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration 中的方法 springSecurityFilterChain 需要一个 bean,但是找到了 2 个: - userInfoTokenServices:由类路径资源 [org/springframework/boot/autoconfigure/security/oauth2/resource/ResourceServerTokenServicesConfiguration$RemoteTokenServicesConfiguration$UserInfoTokenServicesConfiguration.class] 中的方法“userInfoTokenServices”定义 - remoteTokenServices:由类路径资源 [my/CustomWebSecurityConfigurerAdapter.class] 中的方法“remoteTokenServices”定义
【问题讨论】:
-
我也遇到了同样的问题,如果你找到了可以分享一下解决方法吗?
标签: spring spring-security-oauth2