storage로 관리하던 token, cookie로 넘기자
·
Error Handling
refresh는 해결되었지만 큰 문제가 하나 더 남았었습니다.바로 token인데요.token을 cookie에 싣는 방법으로 빠르게 개발을 진행하기 위해제가 발표에 사용했던 자료를 포스팅하고자 합니다.1. 문제점과 해결 방안 제시그동안 서비스에서 로그인 시, 서버로부터 받아온 response의token(= refresh, access)을 localstorage에 보관해왔습니다.해당 방식의 문제점은 크래커가 localStorage에 접근하는 코드 한 줄로token에 쉽게 접근이 가능하다는 점인데요.(XSS Attack) token 조작으로 타 유저의 이미지 변경, 원치 않는 정보 변경 등이 이뤄질 수 있으므로이에 대한 대응이 필요한데 여러 대응책 중 하나가 바로 Cookie를 활용하는 것입니다.2. 왜 Co..
로그인은 자유지만 로그아웃은 아니란다. Refresh 에러 처리기
·
Error Handling
회사 개발자 동료분들 중 한 분께서 로그아웃을 했음에도 자동으로 로그인이 되었다는 이야기로 문제가 시작되었습니다.네트워크 탭을 확인해보니 로그아웃을 했음에도 refresh 요청이 전달되었고로그인 유지가 이뤄지고 있었는데요. 원하지 않는 로그인 유지가 이뤄지게 된다면 제 3자가 유저의 계정을 사용해범죄를 저지르거나 피해를 입힐 수 있는 보안 문제와 직결되어 해결이 시급했습니다. 우선 현 문제를 파악했으니 문제 해결을 위한 프로세스를 크게 2단계로 확립해봤어요.1) 문제 해결 프로세스1단계로는 임시로 refresh 요청 시, 백엔드에서 유저 토큰을 비교해 만료된 token이라면 오류를 보내 로그인을 막고만료되지 않은 token이라면 그대로 로그인을 유지할 수 있도록 처리해달라고 부탁드렸습니다. 2단계로 re..