2013-02-17 3 views
5

Tomcat7에서 스프링 MVC를 사용하여 webapp를 구축 중이며 사용자 인증을 위해 스프링 보안을 사용하고 있습니다. 표준 컨트롤러와는 별도로, 인증을 위해 연결을 필요로하는 websocket 서블릿도 있습니다.스프링 보안 웹 소켓 인증

흐름은 다음과 같습니다. 클라이언트가 서버에 연결되고 인증 성공 후 로그인 페이지로 리디렉션됩니다. 수신 한보기는 소켓에 연결하려고 시도합니다. 인증 된 사용자 만이 websocket 연결을 시작할 수 있는지 확인해야합니다.

약간의 조사 끝에 websocket 연결을 시작하는 HTTP 업그레이드 요청을 인증하는 것으로 충분하다는 것을 알았습니다. 그러나 나는 내가 사용하는 기술로 그 일을하는 방법에 관해서 난처한 입장에있다. URL의 간단한 차단이 websocket을 가리키는 것처럼 보이지 않습니다. 소켓 응답이 302 응답으로 끝나기 때문에 인증이 실패하고 로그인 페이지로 리디렉션됩니다. 문제 해결에 도움을 주셔서 감사드립니다.

감사

+0

내가 생각, 이것은 나뿐만 아니라 내 프로젝트에 대해 연구하고있는 무슨이다, 그러나 웹 소켓 인증이다 연결 프레임에서 헤더로 전송됩니다. 로그인/비밀번호 세부 정보의 헤더 요소를 확인하고 사용자의 유효성을 검사하는 필터를 작성해야합니다. – demesne

+0

이 [질문] [1]의 답은 귀하의 사례에 도움이 될 수 있습니다. [1] : https://stackoverflow.com/questions/25004081/springmvc-websockets-messaging-user-authentication-with-spring-security/27853391#27853391 – phuong

답변