티스토리 뷰

카테고리 없음

9주차 파트6

파이썬 초보 파이리 2025. 3. 25. 14:51

1. JWT 발급

  • jwt.sign()을 사용하여 사용자의 정보비밀키를 포함한 JWT를 생성할 수 있다.
  • 생성된 JWT는 쿠키에 저장하거나 클라이언트에게 응답으로 보낼 수 있다.
  • 발급된 JWT에는 발급 시간(iat), 만료 시간(exp), 발급자(iss) 등의 정보가 포함될 수 있다.

2. JWT 검증

  • 클라이언트는 Authorization 헤더에 JWT를 포함하여 서버에 요청을 보낸다.
  • 서버에서는 jwt.verify()를 사용해 JWT의 유효성을 검사한다.
  • 검증에 성공하면 토큰에서 사용자의 정보를 추출하여 활용할 수 있다.

JWT를 활용한 API 보안 적용

1. 로그인 기능에 JWT 적용

  • 사용자가 로그인하면, 서버는 사용자 ID, 이메일 등의 정보를 포함한 JWT를 발급한다.
  • 발급된 JWT는 쿠키 또는 로컬 스토리지에 저장할 수 있으며, 이후 인증이 필요한 API 요청 시 포함하여 보낸다.

2. JWT를 적용한 API 예시 – 좋아요 기능

  • 좋아요(Like) 기능을 구현할 때, JWT를 활용하여 사용자 인증 후 좋아요를 등록할 수 있다.
  • 요청을 보낸 사용자 정보를 jwt.verify()를 통해 확인하고, 이를 기반으로 해당 사용자의 ID를 데이터베이스에 저장한다.

JWT 적용 시 고려할 점

  • 토큰 유효기간 설정: 너무 길면 보안 위험, 너무 짧으면 사용자 불편
  • HttpOnly 옵션 사용: 쿠키에 저장할 경우, XSS 공격 방지를 위해 설정 필요
  • Bearer Token 방식 사용: API 요청 시 Authorization 헤더에 Bearer 토큰값을 포함하는 방식 활용
  • 토큰 검증 실패 처리: 만료되거나 위조된 토큰에 대한 예외 처리 필수
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함