## 목표 채팅 WebSocket에 인증을 연동해 발신자를 실제 로그인 사용자로 도출하고, 채널 접근을 팟 참여자로 제한한다. ## 상세 - 엔드포인트: WS `/ws`, SUB `/topic/parties/{partyId}/chat`, PUB `/app/parties/{partyId}/chat` - 참고: PR #41 CodeRabbit 리뷰(Critical), FR-CHAT-01 - 핵심 규칙: - STOMP CONNECT 시 JWT 검증 후 Principal 설정 - `ChatController.sendMessage`의 `senderId = 1L` 하드코딩 제거, 인증 주체에서 도출 - 구독·발행 시 해당 팟 참여자인지 검증 - SecurityConfig의 `/ws/**` 공개 처리 재검토 ## 선행 조건 - 배달팟 참여(join) API — 멤버십 검증 대상이 필요해 현재는 구현 불가 ## 완료 조건 - [ ] 로컬에서 동작 확인 - [ ] 테스트 작성 > 현재 `/ws`가 인증 없이 열려 있고 모든 메시지가 임시 사용자(1L)로 저장됩니다. 실사용자 오픈 전 반드시 완료되어야 합니다.
목표
채팅 WebSocket에 인증을 연동해 발신자를 실제 로그인 사용자로 도출하고, 채널 접근을 팟 참여자로 제한한다.
상세
/ws, SUB/topic/parties/{partyId}/chat, PUB/app/parties/{partyId}/chatChatController.sendMessage의senderId = 1L하드코딩 제거, 인증 주체에서 도출/ws/**공개 처리 재검토선행 조건
완료 조건