2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Grund: Spring-Security ist integriert.Die Websocket-Anfrage wurde abgefangen und keine Protokolle ausgegeben (da die allgemeine Spring-bezogene Protokollebene „Warnung“ lautet. Im Debug-Modus sind zu viele Protokolle vorhanden.)
Anschließend können Sie die Sog-Protokollstufe ändern, um die Protokolle anzuzeigen
- # 日志配置
- logging:
- level:
- com.cas.wict: debug
- org.springframework: warn
- org.springframework.web: debug
- io.undertow: debug
Schlüsselprotokollausgabe
- 2024-07-11 10:15:43.292 [XNIO-1 task-1] DEBUG io.undertow.request.security
- - Attempting to authenticate /ws, authentication required: false
- 2024-07-11 10:15:43.293 [XNIO-1 task-1] DEBUG io.undertow.request.security
- - Authentication outcome was NOT_ATTEMPTED with method io.undertow.security.impl.CachedAuthenticatedSessionMechanism@7fedbc60 for /ws
- 2024-07-11 10:15:43.293 [XNIO-1 task-1] DEBUG io.undertow.request.security
- - Authentication result was ATTEMPTED for /ws
Es wurde festgestellt, dass die Sicherheit möglicherweise den WS-Anforderungspfad abgefangen hat (warum es abgefangen hat, ich vermute, dass WS zwar geschrieben wurde, aber bei der Initiierung immer noch http war und vom Hintergrund auf den Websocket aktualisiert wurde).
Lösung: Lassen Sie die Verifizierung los und schreiben Sie einen separaten Filter, um ws-Anfragen zu verifizieren
Warum war es früher möglich, eine Verbindung über Netty-Websocket herzustellen, weil Netty die Federsicherheitsfilterkette nicht verwendet hat?