-
Authentication 최종 정리Project/트윗 클론코딩 2023. 10. 2. 19:23반응형
authentication에 관한 부분을 router, controller, data 부분으로 나눠서 정리했다.
validation에서 중복적으로 쓰이는 코드를 하나로 빼서 재사용성을 높였고
authentication을 검증하는 미들웨어를 만들어서 tweet에 관한 동작들을 인증된 사용자가 아니면 제한하게끔 만들었다.
라우터 > 컨트롤러 > 데이터 순서인데
라우터부터 살펴보면 validate를 다루는 2개의 변수가 있는데 하나는 로그인 할 때 사용하는 username과 pw를 검사하는 변수이다
회원가입 할 때도 사용하는 녀석들이기에 이를 그대로 받아와서 signup하는 곳에 비구조화로 가져와서 그대로 썼다.
컨트롤러에는 토큰을 생성하고 보내주는 내용이 주를 이루고 있다 bcrypt를 사용해 암호를 해시하고 해시한 암호를 db에 전송한다
로그인 시에는 입력받은 암호와 db에 저장된 암호를 비교하여 맞는지 확인하고 토큰을 발행한다
db에서는 계정을 생성하고 id나 username에 따른 계정에 대한 정보를 반환하는 일을 한다.
지금 개발단계이기에토큰 암호와 같은 보안에 치명적인 것들을 그냥 쓰고 있는데 나중에
이를 숨기는 작업이 꼭 필요하다 강의를 진행하면서 어떻게 해나갈지 궁금하다
반응형'Project > 트윗 클론코딩' 카테고리의 다른 글
로그인 시퀸스 다이어그램 (0) 2023.10.24 XSS와 CSRF에 대응하기 (1) 2023.10.23 Authentication 구축하기 (0) 2023.09.30 서버에서 Validation & Sanitization 수행하기 (0) 2023.09.24 서버 아키텍쳐 구축하기 (0) 2023.09.23