Heim > Web-Frontend > js-Tutorial > Wie konfiguriere ich CORS in einer Spring Boot-Anwendung mit Spring Security richtig?

Wie konfiguriere ich CORS in einer Spring Boot-Anwendung mit Spring Security richtig?

Barbara Streisand
Freigeben: 2024-12-01 12:33:14
Original
423 Leute haben es durchsucht

How to Properly Configure CORS in a Spring Boot Application with Spring Security?

CORS in einer Spring Boot Spring Security-Anwendung konfigurieren

Problem

Die Integration der CORS-Unterstützung in eine mit Spring Security konfigurierte Spring Boot-Anwendung kann zu unerwarteten Ergebnissen führen CORS-bezogene Probleme. Insbesondere bei der Verwendung von AngularJS oder JavaScript XMLHttpRequests können Statuscodes wie „0“ oder leere Antworttexte auftreten, wenn die Authentifizierung fehlschlägt, was die ordnungsgemäße Fehlerbehandlung im Frontend behindert.

Lösung

Um dieses Problem zu beheben Problem, aktivieren Sie explizit die CORS-Unterstützung in Spring Security:

  1. Aktivieren Sie CORS Unterstützung in Spring Security:

    @EnableWebSecurity
    public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            http.cors().and()... // Add additional security configuration here
        }
    }
    Nach dem Login kopieren
  2. Verwenden Sie die globale CORS-Konfiguration (optional):

    Definieren Sie eine CorsConfigurationSource-Bean:

    @Bean
    CorsConfigurationSource corsConfigurationSource() {
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", new CorsConfiguration().applyPermitDefaultValues());
        return source;
    }
    Nach dem Login kopieren

Diese Konfiguration nutzt die CORS-Unterstützung von Spring MVC und befasst sich mit früheren filterbasierten Ansätzen. Weitere Details finden Sie in der CORS-Dokumentation von Spring Security.

Zusätzliche Hinweise

  • Das Problem tritt auf, wenn Spring Security CORS-Header während des Authentifizierungsprozesses umleitet oder nicht hinzufügt.
  • Durch die Aktivierung der Spring Security CORS-Unterstützung kann das Framework die CORS-Konfiguration von Spring MVC nutzen.
  • Controller-Ebene @CrossOrigin-Anmerkungen werden unterstützt, wenn die Spring Security CORS-Unterstützung aktiviert ist.
  • Wenn die Authentifizierung fehlschlägt, enthält die Antwort den entsprechenden Statuscode und Text, was die ordnungsgemäße Fehlerbehandlung im Frontend erleichtert.

Das obige ist der detaillierte Inhalt vonWie konfiguriere ich CORS in einer Spring Boot-Anwendung mit Spring Security richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage