Heim >Web-Frontend >js-Tutorial >Wie konfiguriere ich CORS in Spring Boot mit Spring Security richtig?
Bei der Verwendung von Spring Boot und Spring Security bei gleichzeitiger Unterstützung von CORS können bestimmte Konfigurationsprobleme auftreten, die zu unerwarteten Ergebnissen führen.
Ein solches Problem tritt auf, wenn eine GET-Anfrage mit XMLHttpRequest gestellt und CORS-Unterstützung verwendet wird, wobei trotz falscher Authentifizierungsdaten ein Statuscode 200 zurückgegeben wird. Dieses Verhalten führt zu Diskrepanzen bei der Verarbeitung von HTTP-Statuscodes im Frontend.
Um dieses Problem zu beheben, ist es wichtig, die CORS-Unterstützung in Spring Security explizit zu aktivieren. Dies wird durch die Einrichtung von CORS in Spring Security erreicht, wodurch die Spring MVC CORS-Konfiguration genutzt werden kann.
Für Anwendungen, die @CrossOrigin-Annotationen auf Controller-Ebene verwenden, reicht es aus, die Spring Security CORS-Unterstützung einfach zu aktivieren. Der folgende Code zeigt dies:
@EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.cors().and()... } }
Für Benutzer, die sich für eine globale CORS-Konfiguration entscheiden, ist es notwendig, eine CorsConfigurationSource-Bean zu definieren.
@EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.cors().and()... } @Bean CorsConfigurationSource corsConfigurationSource() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**", new CorsConfiguration().applyPermitDefaultValues()); return source; } }
Durch die Verwendung dieses Ansatzes wird die CORS-Unterstützung effektiv ist in Spring Boot und Spring Security aktiviert und behebt das Problem, dass bei Authentifizierungsprüfungen nicht die richtigen CORS-Header hinzugefügt wurden. Weitere Informationen finden Sie in der offiziellen Spring Security-Dokumentation zu CORS.
Das obige ist der detaillierte Inhalt vonWie konfiguriere ich CORS in Spring Boot mit Spring Security richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!