@EnableAuthorizationServer和@EnableResourceServer在同一应用程序中

时间:2019-08-16 14:34:42

标签: spring-security spring-cloud

我正在使用Spring Cloud(Greenwich.RELEASE)和@EnableAuthorizationServer来实现身份验证服务器。执行OAuth2身份验证代码流的集成测试可以正常工作。

现在,我想通过@EnableResourceServer将一些受保护的端点添加到同一应用程序中。但是,一旦添加此注释,集成测试就会开始失败。

当我在/login.do上进行初始登录时,我曾经得到302响应,而现在却得到404。似乎资源服务器配置已接管,授权服务器配置被完全忽略了。

我添加了以下最小/虚拟资源服务器配置类:

@Configuration
@EnableResourceServer
public class ResourceServerConfiguration extends ResourceServerConfigurerAdapter {

    @Autowired
    private DefaultTokenServices tokenService;


    @Override
    public void configure(ResourceServerSecurityConfigurer config) {
        config.tokenServices(tokenService);
    }


    @Override
    public void configure(HttpSecurity httpSecurity) throws Exception {

        httpSecurity
            .csrf().disable()
            .authorizeRequests()
                .antMatchers("/**")
                .permitAll();
    }
}

0 个答案:

没有答案