백엔드 스터디로 미들웨어에서 요청을 가로채서 검증하는 방식의 가드를 간단하게 공부했었다.
하지만 쿠키만을 사용한 단순 가드는 보안에 있어 좋지 못하다. 보안을 위해서는 서버에서 인증하고 해당 정보를 세션에 저장해두는 것이다.
쿠키는 세션에서 찾을 정보의 가이드로만 사용하고 중요 정보는 세션에 넣는게 좋다.
여기서는 이러한 인증 전략을 도와주기 위해 passport 라는 라이브러리를 사용하겠다.
대략적인 흐름
- 가드가 요청을 가로채서
passport의 스트래티지(전략) 파일에 - 스트래티지 파일에서는 쿠키의 세션 아이디를 기반으로 세션 시리얼라이즈에 인증정보 요청
- 세션 시리얼라이즈는 세션 아이디로 세션을 찾아 인증 정보를 반환해줌
- 가드가 인증유무를 확인하여 반환
한줄요약: 가드는 검문을 요청하고, 스트래티지는 신분증(세션ID)을 확인하며, 시리얼라이저는 신원 조회(세션조회)를 담당한다
의문?
passport의 스트래티지를 사용하는 이유가 뭐지?
수동으로 분기처리와 쿠키 파싱 & 검증을 하여 물론 구현이 가능하다만 코드가 길어지고 표준화가 힘듬
그리고 추후 JWT나 OAuth 방식을 추가해야 한다면 확장성이 떨어지고 코드가 지저분해질 염려가 있다.
인증 유형별 스트래티지
알아두면 좋을것 같아서 남겨놓는다

'개발 > 기타' 카테고리의 다른 글
| 네트워크 관리사 2급 실기 모의고사 사이트 (0) | 2026.02.03 |
|---|---|
| 티스토리 깃허브 연동하기 (1) | 2025.07.08 |