私の連絡先情報
郵便メール:
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
理由: Spring-security が統合されています。WebSocket リクエストをインターセプトし、ログを出力しませんでした (一般的な Spring 関連のログ レベルが警告であるため。デバッグ モードのログが多すぎます)。
次に、undertow のログ レベルを変更してログを表示できます。
- # 日志配置
- logging:
- level:
- com.cas.wict: debug
- org.springframework: warn
- org.springframework.web: debug
- io.undertow: debug
キーログ出力
- 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
セキュリティが ws リクエスト パスを傍受した可能性があることが判明しました (なぜ傍受したのかというと、ws が書き込まれたにもかかわらず、開始された時点ではまだ http であり、バックグラウンドから WebSocket にアップグレードされたためだと思います)。
解決策: 検証を放棄し、WS リクエストを検証するための別のフィルターを作成します。
以前は netty-websocket を使用して接続できたのはなぜですか? netty が spring-security フィルター チェーンを使用しなかったためです。