[Spring WebSocket] Spring Security + STOMP
·
Spring/WebSocket
채팅 토이 프로젝트를 진행하면서 사용자 인증/인가를 위해 `Spring Security`도 사용을 하였다. 하지만, 채팅 서비스는 `WebSocket` 위에서 동작하기에커넥션이 맺어진 이후에는 `Security Filter`를 타지 않는다. 따라서, 이와 관련해서 `JWT` 검증을 다르게 동작시켜야만 한다. 우선, `Spring Security`를 이용해 `WebSocket` 연결을 보호할 때, 인증 및 인가가 이루어지는 순서를 살펴보자. 이 과정에서는 `HandShake`와 `WebSocket` 통신 두 가지 주요 단계가 있다. 각 단계에서 `Spring Security` 필터와 `ChanneInterceptor`가 어떻게 작동할까? 1. Handshake 단계`Handshake` 단계는 `TCP..