[230116-230122] 실전 3주차 WIL

뜨개발자·2023년 1월 22일
0

WIL

목록 보기
11/14

CRUD를 일찍 마친다고 마쳤는데도 진행 상황에 따라서 자잘한 수정 사항이 생기는 것은 어쩔 수 없는 모양이다.
그래도 기본을 빨리 다져둔 덕에 모두 뜯어내야 하는 일이 없다는 점은 다행이라고 생각한다.

socket.io에 대해서는 사실 아직도 불만족스러운 부분이 많다.
아직 리팩토링을 거치지 못했기 때문에 마음에 들지 않는 구석이 있어서 그런가...
새로운 기능에 도전해봤다는 점, 그리고 그 기능이 프론트와 함께하며 실제로 동작하는 순간을 목격한 점에 있어서는 뿌듯하지만 수정해야 할 부분이 많다고 생각한다.
기능 만족, 코드 불만족!

리프레시 토큰을 구현하게 되면서는 많은 고민을 했다.
쿠키가 탈취되어 액세스 토큰이 누군가에게 넘어갔을 때를 대비하려고 만든 게 리프레시 토큰인데 이걸 또 프론트에 넘겨주는게 맞나?
이런 고민으로 ip 주소를 얻어 처음 발급받을 때의 ip와 다르면 새로 토큰을 발급해주지 않으려고 했었다.
그런데 무슨 이유 때문인지 ip 주소를 얻어오는 데에 계속 실패했다.
분명히 프록시 설정도 다 해주었는데 무엇이 문제였었던 것인지는 아직 잘 모르겠지만...
그래서 한참 고민하다가 데이터를 더 얻고 나니 일반적으로 액세스 토큰과 리프레시 토큰이 한 번에 탈취되는 경우는 생각하지 않는 듯 했다.
한 번에 하나가 탈취되어 정상 사용자인 것 처럼 요청을 보내는 경우는 나도 방어할 수 있었기 때문에 이런 방식으로 진행하기로 했다.
다만, 정상 사용자가 자신 외 다른 누군가 로그인한 것처럼 느낀다면 모든 기기에서 로그아웃을 할 수 있는 버튼이 있었으면 좋겠다고 프론트에 전달하였다.

자잘한 디테일에서 아쉬움이 있는 것은 사실이지만, 사실 결과만 놓고 본다면 우리는 늦지 않은 속도로 우리의 목표를 향해 잘 개발이 이루어지고 있는 것 같다.
처음에 내가 조원들에게 이야기했던 목표인 1. 기한을 지킬 것, 2. 기능이 충실히 수행될 것이라는 두 조건에 크게 어긋나지 않는 것 같아서 만족스럽다.
나 뿐만이 아니라 모두가 그렇게 느끼고 있었으면 좋겠다.

profile
뜨개질하는 개발자

0개의 댓글