[ComputerScience] Refresh Token

🌟 Refresh Token

🎯 JWT 인증과정

img

  1. νšŒμ›κ°€μž… μ‹œ κ°œλ°œμžκ°€ μ„€μ •ν•œ 정보λ₯Ό ν† λŒ€λ‘œ μ•‘μ„ΈμŠ€ 토큰과 λ¦¬ν”„λ ˆμ‹œ 토큰을 μƒμ„±ν•©λ‹ˆλ‹€.
  2. μƒμ„±ν•œ 토큰을 λ°˜ν™˜ν•©λ‹ˆλ‹€.
  3. ν΄λΌμ΄μ–ΈνŠΈμΈ‘μ—μ„œλŠ” μ•‘μ„ΈμŠ€ 토큰이 λ§Œλ£Œλ˜μ§€ μ•Šμ€ 지 ν™•μΈν•©λ‹ˆλ‹€.

    1. λ§Œλ£Œλ˜μ§€ μ•Šμ•˜λ‹€λ©΄?

      • μ•‘μ„ΈμŠ€ 토큰을 헀더에 λ„£μ–΄ μ„œλ²„μΈ‘μœΌλ‘œ μš”μ²­μ„ λ³΄λƒ…λ‹ˆλ‹€.
    2. 만료 λ˜μ—ˆλ‹€λ©΄?

      • μ•‘μ„ΈμŠ€ 토큰과 λ¦¬ν”„λ ˆμ‹œ 토큰을 μ„œλ²„μΈ‘μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.
      • μ„œλ²„λŠ” 받은 μ•‘μ„ΈμŠ€ ν† ν°μœΌλ‘œ μ‚¬μš©μžλ₯Ό μ‹λ³„ν•©λ‹ˆλ‹€.
      • ν•΄λ‹Ή μ‚¬μš©μžμ˜ λ¦¬ν”„λ ˆμ‹œ 토큰과 ν΄λΌμ΄μ–ΈνŠΈμΈ‘μ—μ„œ λ„˜κ²¨μ€€ λ¦¬ν”„λ ˆμ‹œ 토큰을 λŒ€μ‘°ν•©λ‹ˆλ‹€.
      • μΌμΉ˜ν•œλ‹€λ©΄ μƒˆλ‘œμš΄ μ•‘μ„ΈμŠ€ 토큰을 μƒμ„±ν•˜μ—¬ λ°˜ν™˜ν•©λ‹ˆλ‹€.
    3. λ¦¬ν”„λ ˆμ‹œν† ν°κΉŒμ§€ λ§Œλ£Œλ˜μ—ˆλ‹€λ©΄?

      • ν΄λΌμ΄μ–ΈνŠΈμ—κ²Œ μƒˆλ‘œμš΄ 인증을 μš”κ΅¬ν•©λ‹ˆλ‹€.

🎯 λ¦¬ν”„λ ˆμ‹œ ν† ν°μ˜ μ—­ν• 

μΈμ¦κΈ°ν•œμ΄ 만료된 μ‚¬μš©μžμ—κ²Œ μƒˆλ‘œμš΄ μ•‘μ„ΈμŠ€ 토큰을 μƒμ„±ν•΄μ€λ‹ˆλ‹€.

🎯 μž₯점

μ •λ³΄μ˜ λ…ΈμΆœμ‹œκ°„μ„ μ€„μ΄λŠ”λ°μ— μ˜μ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€. JWT νŠΉμ„±μƒ κΆŒν•œμ„ μœ„ν•œ 데이터가 λͺ¨λ‘ ν† ν°μ•ˆμ— λ“€μ–΄κ°€μžˆκ³ , λ°œκΈ‰ν•˜λ©΄ λ§Œλ£Œμ‹œκΉŒμ§€ λŒμ΄ν‚¬ 수 없기에 이λ₯Ό νƒˆμ·¨ν•˜μ—¬ λ””μ½”λ“œν•˜λŠ” 경우 정보가 μ˜€λžœμ‹œκ°„ λ…ΈμΆœλ  수 μžˆμ–΄μ„œ μ£Όμ˜ν•΄μ•Όν•©λ‹ˆλ‹€.

λ•Œλ¬Έμ— κΆŒν•œμ •λ³΄λ₯Ό λ‹΄κ³ μžˆλŠ” μ•‘μ„ΈμŠ€ν† ν°μ΄ νƒˆμ·¨λ˜λ”λΌλ„ λΉ λ₯΄κ²Œ λ§Œλ£Œμ‹œν‚€κ³  λ¦¬ν”„λ ˆμ‹œ ν† ν°μœΌλ‘œ μ‚¬μš©μžλ₯Ό μž¬ν™•μΈν•˜μ—¬ λ°œκΈ‰ν•˜λŠ” λ‘œμ§μ„ κ±°μΉ˜λŠ” 것이 ν•„μš”ν•©λ‹ˆλ‹€.

μ΄λ ‡κ²Œ 되면 토큰이 νƒˆμ·¨λ˜λ”λΌλ„ 금방 만료되고 λ¦¬ν”„λ ˆμ‹œ 토큰은 λ…ΈμΆœλ˜μ§€ μ•ŠκΈ°λ•Œλ¬Έμ— μž¬λ°œκΈ‰μ„ 막을 수 μžˆλ‹€λŠ” 것과 μ§€μ†μ μœΌλ‘œ 정보λ₯Ό λ…ΈμΆœμ‹œν‚€μ§€ μ•Šκ³  λ¦¬ν”„λ ˆμ‹œ 토큰과 μ•‘μ„ΈμŠ€ν† ν°μ΄ μ„œλ²„λ‘œ μ „ν•΄μ§€λŠ” 짧은 μˆœκ°„λ§Œ λ…ΈμΆœμ‹œν‚€λ©΄ λœλ‹€λŠ” μž₯점이 μžˆμŠ΅λ‹ˆλ‹€.

🎯 단점

μ„Έμ…˜κ³Ό 쿠킀에 λΉ„ν•˜μžλ©΄ μ„œλ²„μž…μž₯μ—μ„œ μ €μž₯μ†Œκ°€ λ”°λ‘œ ν•„μš”ν•˜μ§„ μ•Šμ§€λ§Œ μš”μ²­ νšŸμˆ˜λ‚˜ 검증과정이 λ§Žμ•„μ§‘λ‹ˆλ‹€. λ˜ν•œ 길이가 κΈΈμ–΄ μ„œλ²„ μžμ›μ„ λ‚­λΉ„ν•  수 μžˆμŠ΅λ‹ˆλ‹€.


Written by@μ΄μ£Όν˜•
εΉ³εΈΈεΏƒ

GitHubFacebook