작성
·
449
0
현재 강사님의 스프링 시큐리티 강의를 본 뒤 개인 프로젝트에 spring security를 이용한 로그인 처리를 진행중입니다. vue.js와 통신을 하기위해 ajax 인증 방식을 사용하려 합니다. 궁금한 점은 formlogin의 경우 여러 구현체가 spring에서 제공되는 것 같은데 ajax방식은 제공된 구현체 없이 다 커스텀 해야되는 것인지 궁금합니다.
추가로 강의 내용과 다소 멀어진 내용이지만 spring, vue 통신 시 spring에서 넘긴 쿠키를 vue에서 받으려면 어떠한 설정이 필요한지 알 수 있을까요? cors설정을 해보아도 vue에서 쿠키값이 받아지지 않아 고민입니다ㅠ
답변 1
0
ajax 즉 클라이언트 비동기 방식의 경우 formLogin 방식의 흐름과 거의 동일하게 처리할 수 있지만 요청과 응답에 있어 동기가 아닌 비동기 방식으로 처리가 된다는 점이 차이가 있다고 볼 수 있습니다.
그래서 비동기 방식으로 처리하는 구현체가 별도로 없기 때문에 커스텀이 필요하긴 하지만 동기식 구현체와 흐름이 비슷하기 때문에 그렇게 어려운 부분은 없다고 보시면 됩니다.
그리고 스프링에서 쿠키를 보통 응답 헤더에 담아서 보내게 되면 브라우저에 저장을 하게 되고 자바 스크립트에서 접근은 가능합니다
다만 보안상 서버측에서 httpOnly 로 설정해서 보내게 되면 스크립트 단에서 접근할 수 없습니다.
즉 쿠키는 http 통신에서만 요청과 응답이 가능한 것이라 할 수 있습니다.
보안과 별도로 스크립트에서 쿠키에 접근하는 방법은 구글등에서 여러자료가 나와 있으니 참고해 주시기 바랍니다.
답변감사합니다!!