ホームページ  >  記事  >  Java  >  Spring Security CORS フィルターを統合するにはどうすればよいですか?

Spring Security CORS フィルターを統合するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-01 12:52:22190ブラウズ

How to Integrate Spring Security CORS Filter?

Spring Security CORS フィルターの統合

Spring Security では、クロスオリジンリクエストを処理するために CORS 構成が必要です。この問題に具体的に対処するには、次の手順に従います。

  1. WebMvcConfigurerAdapter を実装します:

    <code class="java">@Configuration
    public class WebConfig extends WebMvcConfigurerAdapter {
    
        @Override
        public void addCorsMappings(CorsRegistry registry) {
            registry.addMapping("/**")
                    .allowedMethods("HEAD", "GET", "PUT", "POST", "DELETE", "PATCH");
        }
    }</code>
  2. HttpSecurity で CORS を構成します:

    <code class="java">@Configuration
    public class SecurityConfig extends WebSecurityConfigurerAdapter {
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            http.cors().configurationSource(corsConfigurationSource());
        }
    
        @Bean
        public CorsConfigurationSource corsConfigurationSource() {
            final CorsConfiguration configuration = new CorsConfiguration();
            configuration.setAllowedOrigins(ImmutableList.of("*"));
            configuration.setAllowedMethods(ImmutableList.of("HEAD",
                                "GET", "POST", "PUT", "DELETE", "PATCH"));
            configuration.setAllowCredentials(true);
            configuration.setAllowedHeaders(ImmutableList.of("Authorization", "Cache-Control", "Content-Type"));
            final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
            source.registerCorsConfiguration("/**", configuration);
            return source;
        }
    }</code>

重要な注意事項:

  • http.authorizeRequests().antMatchers の使用を避ける(HttpMethod.OPTIONS, "/**").permitAll();これらは間違った解決策であるため、web.ignoring().antMatchers(HttpMethod.OPTIONS); または web.ignoring().antMatchers(HttpMethod.OPTIONS); となります。
  • 詳細については、Spring Security の公式ドキュメントを参照してください: http://docs.spring.io/spring- security/site/docs/4.2.x/reference/html/cors.html

以上がSpring Security CORS フィルターを統合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。