小编bit*_*ain的帖子

Spring 4.2的原生全局CORS支持不适用于CAS filterProcessesUrl

我试图在升级到spring-boot 1.3之后切换到spring 4.2的本机Global CORS支持,但它似乎不适用于CAS过滤器进程url(/ login/cas).

最初,我使用spring-boot 1.2.7和spring 4.2以及spring-security 4.0.2,并使用自制的基于过滤器的cors支持.我自己的休息服务或CAS ST验证URL运行良好.在我升级到spring-boot 1.3后,即将推出spring-spring-security版本.它停止了工作.经过一些挖掘,通过AddFilterBefore修复此问题.所以基于过滤的CORS似乎也适用于spring-boot 1.3.0 + spring-security-cas.

但是,我想使用本机Global CORS,但似乎无法识别CAS ST验证URL(/ login/cas),但其他端点也可以.

请帮忙.

设置非常简单.

@Configuration
public class CorsConfiguration {
    @Bean
    public WebMvcConfigurer corsConfigurer() {
        return new WebMvcConfigurerAdapter() {
            @Override
            public void addCorsMappings(CorsRegistry registry) {

                registry.addMapping("/**");
            }
        };
    }
}   
Run Code Online (Sandbox Code Playgroud)

以下是一些交通:

    Request URL:http://localhost:9000/login/cas?ticket=ST-1357-15aQrv93jGEUsQpQRF1P-cas01.example.org
    Request Method:GET
    Status Code:302 Found

    Cache-Control:no-cache, no-store, max-age=0, must-revalidate
    Content-Length:0
    Date:Thu, 19 Nov 2015 09:19:31 GMT
    Expires:0
    Location:http://localhost:9000/
    Pragma:no-cache
    Server:Apache-Coyote/1.1
    X-Content-Type-Options:nosniff
    X-Frame-Options:DENY
    X-XSS-Protection:1; mode=block
Run Code Online (Sandbox Code Playgroud)

以下是控制台错误:

XMLHttpRequest cannot load …
Run Code Online (Sandbox Code Playgroud)

spring spring-security cors spring-boot spring-security-cas

3
推荐指数
1
解决办法
2330
查看次数