Spring Security 6: cors() ist veraltet und zum Entfernen markiert
php-Editor Yuzai teilt Ihnen eine wichtige Neuigkeit mit: In Spring Security Version 6 ist die Methode cors() veraltet und zum Löschen markiert. Die cors()-Methode wird für die Konfiguration der domänenübergreifenden Ressourcenfreigabe verwendet. In der neuen Version hat das Spring Security-Team jedoch beschlossen, diese Methode zu entfernen und eine leistungsfähigere domänenübergreifende Lösung einzuführen. Diese Änderung ist eine wichtige Änderung für Entwickler, die Spring Security verwenden, da sie ihren Code verstehen und rechtzeitig aktualisieren müssen, um ihn an die Änderungen in der neuen Version anzupassen.
Frageninhalt
Ich habe den folgenden Code:
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { return http .httpBasic().disable() .cors().and().csrf().disable() .authorizeHttpRequests() .requestMatchers("/register") .permitAll() .and() .authorizeHttpRequests() .requestMatchers("/users") .hasAnyAuthority("USER", "ADMIN") .and().formLogin().and().build(); }
Bitte helfen Sie mir, damit diese Funktion funktioniert.
Umgehungslösung
Laut Migrationsleitfaden und zusätzlich Konfiguration auf die neueste Version securityfilterchain
sollte
@Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { return http.csrf(AbstractHttpConfigurer::disable) .cors(AbstractHttpConfigurer::disable) .authorizeHttpRequests(request -> { request.requestMatchers("/register").permitAll(); request.requestMatchers("/users") .hasAnyAuthority("USER", "ADMIN"); }).formLogin(Customizer.withDefaults()).build(); }
Das obige ist der detaillierte Inhalt vonSpring Security 6: cors() ist veraltet und zum Entfernen markiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

我有下面的代码:publicSecurityFilterChainsecurityFilterChain(HttpSecurityhttp)throwsException{returnhttp.httpBasic().disable().cors().and().csrf().disable().authorizeHttpRequests().requestMatchers("

So entwickeln Sie mit Java ein Single-Sign-On-System basierend auf SpringSecuritySAML. Einführung: Mit der rasanten Entwicklung des Internets werden immer mehr Anwendungen entwickelt. In diesen Anwendungen ist die Benutzeranmeldung eine der häufigsten Funktionen. Bei Anwendungen auf Unternehmensebene müssen sich Benutzer jedoch bei mehreren Systemen anmelden, was zu einer sehr schlechten Benutzeranmeldeerfahrung führt. Um dieses Problem zu lösen, wurde das Single-Sign-On-System (SingleSign-On, kurz SSO) entwickelt. einfach

Ja, C++-Lambda-Ausdrücke können die Rekursion mithilfe von std::function unterstützen: Verwenden Sie std::function, um einen Verweis auf einen Lambda-Ausdruck zu erfassen. Mit einer erfassten Referenz kann sich ein Lambda-Ausdruck rekursiv selbst aufrufen.

Ich schreibe derzeit ein Golang+CGO-Programm und werde Posixucontext in CGO verwenden. Da sich meine gesamte Kernlogik in der Bindungsfunktion von ucontext befindet, sollten wir alle Fehler im Code abfangen. Ich habe es getestet, indem ich auf einen Nullzeiger zugegriffen habe, was zu einem völlig unterschiedlichen Verhalten geführt hat, abhängig vom vom Ucontext verwendeten Stapelspeicherort. Nachfolgend finden Sie weitere Details mit vereinfachten Beispielen. Wenn ich den Ucontext-Stack dem Thread-Stack zuordne, wird SIGSEGV ausgelöst. Aber wenn ich es auf dem Heap zuordne, löst es zuerst SIGSEGV und dann SIGT aus, wenn morestack_noctxt aufgerufen wird

Zu den Gründen für den Absturz eines C++-Programms beim Start gehören: fehlende erforderliche Bibliotheken oder Abhängigkeiten, nicht initialisierte Zeiger oder Referenzstapelüberläufe, Segfaults, Probleme mit der Betriebssystemkonfiguration, Programmfehler, Hardwareprobleme

So beheben Sie den C++-Laufzeitfehler „Stackoverflow“. Wenn in einem C++-Programm die Rekursionsebene zu tief ist oder der vom Programm verwendete Speicher die Stapelkapazität überschreitet, tritt ein Laufzeitfehler „Stackoverflow“ auf. Wenn dieser Fehler auftritt, stürzt das Programm ab und es ist schwierig, die genaue Ursache zu ermitteln. In diesem Artikel werden einige Möglichkeiten zur Behebung von „Stackoverflow“-Fehlern vorgestellt und einige Codebeispiele bereitgestellt. Die Hauptursache für den Laufzeitfehler „Stackoverflow“ liegt innerhalb des Stacks

Ich versuche, die Zugriffstoken-Validierung mit GO zu implementieren. Aber die Beispiele, die ich online gesehen habe, scheinen nur TOKEN_SECRET zu verwenden, um es zu überprüfen. Aber ich bin es gewohnt, in Javaspring zu programmieren und muss TOKEN_SECRET nicht verwenden. Ich stelle einfach den jwk-set-uri bereit und er prüft die Gültigkeit (automatische Sicherheitsfilter usw.) und ich weiß, dass er mit dem OAuth-Server kommuniziert und diese Validierung durchführt. Gibt es in Go keine Bibliothek, die durch eine Anfrage an den OAuth-Server prüfen kann, ob das Token gültig ist? Ich weiß, dass ich dies manuell tun kann, indem ich eine Anfrage an den Benutzerinfo-Endpunkt des OAuth-Servers stelle: http://localh

Der rekursive Algorithmus löst strukturierte Probleme durch den Selbstaufruf von Funktionen. Der Vorteil besteht darin, dass er einfach und leicht zu verstehen ist. Der Nachteil besteht jedoch darin, dass er weniger effizient ist und einen Stapelüberlauf verursachen kann Der Vorteil der Stapeldatenstruktur besteht darin, dass sie effizienter ist und einen Stapelüberlauf vermeidet. Der Nachteil besteht darin, dass der Code möglicherweise komplexer ist. Die Wahl zwischen rekursiv und nicht rekursiv hängt vom Problem und den spezifischen Einschränkungen der Implementierung ab.