๋ฐ˜์‘ํ˜•

TL;DR


๐Ÿ’ก Authentication์€ ์ธ์ฆ(์„œ๋ฒ„์˜ ์œ ์ €์ธ์ง€), Authorization์€ ๊ถŒํ•œ๋ถ€์—ฌ(ํŠน์ •ํ•œ ํ–‰๋™ ํ—ˆ์šฉ)

 

  • ์ฟ ํ‚ค : HTTP ํ”„๋กœํ† ์ฝœ์˜ ๋ฌด์ƒํƒœ์„ฑ(Stateless)์„ ๋ณด์™„ํ•ด์ฃผ๋Š” ๋„๊ตฌ๋‹ค. ์ฟ ํ‚ค ์ž์ฒด๋Š” ์ธ์ฆ์ˆ˜๋‹จ์ด ์•„๋‹ˆ๋‹ค.
  • ์„ธ์…˜ : ์„œ๋ฒ„๊ฐ€(์„ธ์…˜ DB) ์ธ์ฆ์ •๋ณด๋ฅผ ๊ฐ€์ง„๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„๊ฐ€ ์ฟ ํ‚ค์— ๋‹ด์•„ ๋ณด๋‚ด์ฃผ๋Š” ์„ธ์…˜ ID๋งŒ ๊ฐ€์ง„๋‹ค.
  • ํ† ํฐ : ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ธ์ฆ์ •๋ณด๋ฅผ ๊ฐ€์ง„๋‹ค. ์„œ๋ฒ„๋Š” ํ† ํฐ์ด ์œ ํšจํ•œ์ง€๋งŒ ํ™•์ธํ•œ๋‹ค.
  • Authentication๊ณผ Authorization ์ฐจ์ด์ 
    • Authentication(์ธ์ฆ / ์‹ ์›ํ™•์ธ) : ํ˜„์žฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •. ํšŒ์‚ฌ ๊ฑด๋ฌผ์„ ์˜ˆ๋กœ๋“ค๋ฉด 1์ธต ์•ˆ๋‚ด ๋ฐ์Šคํฌ์—์„œ ๋ฐฉ๋ฌธ์ž๊ฐ€ ํ•ด๋‹น ๊ฑด๋ฌผ์— ์ถœ์ž…ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๋Š” ๊ณผ์ •.
    • Authorization(ํ—ˆ๊ฐ€ / ๊ถŒํ•œ๋ถ€์—ฌ) : ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ‘๊ทผ์„ ํ—ˆ๋ฝํ•˜๋Š” ๊ณผ์ •. ๊ด€๋ฆฌ์ž๋Š” ๊ฑด๋ฌผ์˜ ๋‹ค์–‘ํ•œ ๊ณต๊ฐ„์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ณ , ๋ฐฉ๋ฌธ์ž๋Š” ํ—ˆ์šฉํ•œ ๊ณต๊ฐ„๋งŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์— ๋น„์œ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ฟ ํ‚ค Cookie


  • ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ๊ธฐ์–ตํ•˜๊ธฐ ์œ„ํ•ด ์„œ๋ฒ„๋Š” ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•ด ์‚ฌ์šฉ์ž ๋ธŒ๋ผ์šฐ์ €์— ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค
  • ์‚ฌ์ดํŠธ์— ๋ฐฉ๋ฌธํ•˜๋ฉด, ๋ธŒ๋ผ์šฐ์ €๋Š” ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค
    • ์„œ๋ฒ„๋Š” ์ด์— ์‘๋‹ตํ•œ๋‹ค. ์‘๋‹ต์—๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ฐพ๊ณ  ์žˆ๋Š” ํŽ˜์ด์ง€ ์ •๋ณด๊ฐ€ ์žˆ๋‹ค. ์ด ์‘๋‹ต์— ์ฟ ํ‚ค๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค
    • ์‚ฌ์šฉ์ž ๋ธŒ๋ผ์šฐ์ €์— ์ฟ ํ‚ค๊ฐ€ ์ €์žฅ๋˜๋ฉด, ์›น์‚ฌ์ดํŠธ์— ๋ฐฉ๋ฌธํ•  ๋•Œ๋งˆ๋‹ค ์ฟ ํ‚ค๋„ ์š”์ฒญ๊ณผ ํ•จ๊ป˜ ๋ณด๋‚ด์ง„๋‹ค.
  • ์ฟ ํ‚ค๋Š” ๋„๋ฉ”์ธ์— ๋”ฐ๋ผ ์ œํ•œ๋œ๋‹ค. e.g. ์œ ํŠœ๋ธŒ๊ฐ€ ์ค€ ์ฟ ํ‚ค๋Š” ์œ ํŠœ๋ธŒ์—๋งŒ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋‹ค
  • ์ฟ ํ‚ค๋Š” ์œ ํšจ๊ธฐ๊ฐ„์ด ์žˆ๋‹ค. ํ•˜๋ฃจ ํ˜น์€ ํ•œ๋‹ฌ ๋“ฑ ์„œ๋ฒ„๊ฐ€ ์ •ํ•œ ๊ธฐ๊ฐ„์— ๋”ฐ๋ผ ์œ ํšจํ•˜๋‹ค
  • ์ฟ ํ‚ค๋Š” ์ธ์ฆ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ •๋ณด๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค
    • ์‚ฌ์šฉ์ž๊ฐ€ ์›น์‚ฌ์ดํŠธ์—์„œ ์–ธ์–ด ์„ค์ •์„ ๋ฐ”๊พธ๋ฉด(์„œ๋ฒ„์— ์š”์ฒญ)
    • ์„œ๋ฒ„๋Š” ์‘๋‹ต๊ณผ ํ•จ๊ป˜ ์ฟ ํ‚ค๋ฅผ ๋ณด๋‚ธ๋‹ค(์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•œ ์–ธ์–ด๋ฅผ ์ €์žฅํ•˜๊ณ  ์‘๋‹ตํ•œ๋‹ค)
    • ์‚ฌ์šฉ์ž๊ฐ€ ํ•ด๋‹น ์›น์‚ฌ์ดํŠธ์— ๋‹ค์‹œ ๋ฐฉ๋ฌธํ–ˆ์„ ๋•Œ ์–ธ์–ด ์„ค์ •์ด ๋‹ด๊ธด ์ฟ ํ‚ค๋ฅผ ์š”์ฒญ๊ณผ ํ•จ๊ป˜ ์„œ๋ฒ„๋กœ ๋ณด๋‚ด๊ณ 
    • ์„œ๋ฒ„๋Š” ์ฟ ํ‚ค๊ฐ€ ๊ธฐ์–ตํ•ด๋‘” ์–ธ์–ด ์„ค์ •์˜ ํŽ˜์ด์ง€๋ฅผ ์ œ๊ณตํ•œ๋‹ค(์‘๋‹ตํ•œ๋‹ค)
  • ์ฐธ๊ณ ๋กœ iOS ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ์˜ ์ฟ ํ‚ค๋Š” ์›น๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ†ตํ•ด ์•ก์„ธ์Šค ํ•˜๋Š” ์ฟ ํ‚ค์™€ ๋‹ค๋ฅด๊ฒŒ ๊ด€๋ฆฌ๋œ๋‹ค
    • HTTP Cookie Storage ํ†ตํ•ด ์ฟ ํ‚ค ๊ด€๋ฆฌ
    • ์•ฑ ๊ฐ„ ์ฟ ํ‚ค ๊ณต์œ  ๋ถˆ๊ฐ€

 

์„ธ์…˜ Session


  • HTTP ํ”„๋กœํ† ์ฝœ์€ Stateless(๋ฌด์ƒํƒœ์„ฑ)๋‹ค. ์ฆ‰ ์„œ๋ฒ„๋กœ ๊ฐ€๋Š” ๋ชจ๋“  ์š”์ฒญ์€ ์ด์ „ ์š”์ฒญ๊ณผ ๋…๋ฆฝ์ ์œผ๋กœ ๋‹ค๋ค„์ง„๋‹ค.
  • ์š”์ฒญ์ด ๋๋‚˜๋ฉด ์„œ๋ฒ„๋Š” ์š”์ฒญ์„ ๋ณด๋‚ธ ๊ณณ์˜ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค
  • ๋•Œ๋ฌธ์— ์š”์ฒญํ•  ๋•Œ๋งˆ๋‹ค, ์š”์ฒญ์„ ๋ณด๋‚ธ ๊ณณ์ด ๋ˆ„๊ตฌ์ธ์ง€ ์„œ๋ฒ„์—๊ฒŒ ์•Œ๋ ค์ค˜์•ผ ํ•œ๋‹ค
  • ์ด๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ค‘ ํ•˜๋‚˜๊ฐ€ ๋ฐ”๋กœ Session
  • Smith๋ผ๋Š” ์œ ์ €๊ฐ€ ์žˆ๊ณ  ๋กœ๊ทธ์ธํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด
    • ์œ ์ €์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„œ๋ฒ„์— ๋ณด๋‚ธ๋‹ค
    • ์ •๋ณด๊ฐ€ ๋งž๋‹ค๋ฉด ์„œ๋ฒ„๋Š” ์„ธ์…˜ DB์— Smith๋ผ๋Š” ์œ ์ €๋ฅผ ์ƒ์„ฑํ•œ๋‹ค
    • ํ•ด๋‹น ์„ธ์…˜์—๋Š” ๋ณ„๋„์˜ ID๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค
    • ์ด ์„ธ์…˜ ID๋Š” ์ฟ ํ‚ค๋ฅผ ํ†ตํ•ด ๋ธŒ๋ผ์šฐ์ €๋กœ ๋Œ์•„์˜ค๊ณ  ์ €์žฅ๋œ๋‹ค
    • ๊ทธ ํ›„ ๊ฐ™์€ ์›น์‚ฌ์ดํŠธ์˜ ๋‹ค๋ฅธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๋Š” ์„ธ์…˜ ID๊ฐ€ ๋‹ด๊ฒจ ์žˆ๋Š” ์ฟ ํ‚ค๋ฅผ ์„œ๋ฒ„์— ๋ณด๋‚ธ๋‹ค. — ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญํ•  ๋•Œ ์ฟ ํ‚ค๋„ ์ž๋™์œผ๋กœ ๋ณด๋‚ด์ง„๋‹ค
    • ์„œ๋ฒ„๋Š” ์„ธ์…˜ ID๊ฐ€ ๋‹ด๊ฒจ์žˆ๋Š” ์ฟ ํ‚ค๋ฅผ ํ™•์ธํ•˜๊ณ  — ์ด๋•Œ๊นŒ์ง€ ์„œ๋ฒ„๋Š” ์š”์ฒญ์„ ๋ณด๋‚ธ์ž๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€ ๋ชจ๋ฅธ๋‹ค
    • ์ด ์„ธ์…˜ ID๋กœ ์„ธ์…˜ DB๋ฅผ ํ™•์ธํ•œ๊ณ  ํ•ด๋‹น ID๋Š” ์œ ์ €๋ช… Smith์˜ ๊ฒƒ์ด๋ž€๊ฑธ ์•Œ๊ฒŒ๋œ๋‹ค.
    • ์ด ์š”์ฒญ์ด ๋๋‚˜๊ณ  ๋‹ค๋ฅธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•  ๋•Œ๋งˆ๋‹ค ์œ„ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐ˜๋ณต๋œ๋‹ค
  • ์ค‘์š”ํ•œ ์œ ์ € ์ •๋ณด๋Š” ๋ชจ๋‘ ์„œ๋ฒ„์— ์žˆ๋‹ค. ์œ ์ €๊ฐ€ ๊ฐ–๊ณ  ์žˆ๋Š”๊ฑด ์„ธ์…˜ ID ๋ฐ–์— ์—†๋‹ค.
  • ์ด๋•Œ ์ฟ ํ‚ค๋Š” ์„ธ์…˜ ID๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•œ ๋งค๊ฐœ์ฒด์ผ ๋ฟ์ด๋‹ค
  • ์„œ๋ฒ„๋Š” ํ˜„์žฌ ๋กœ๊ทธ์ธํ•œ ์œ ์ €๋“ค์˜ ๋ชจ๋“  ์„ธ์…˜ ID๋ฅผ DB์— ์ €์žฅํ•ด์•ผ ํ•œ๋‹ค.
    • ์š”์ฒญ์ด ๋“ค์–ด์˜ฌ ๋•Œ๋งˆ๋‹ค ์„œ๋ฒ„๋Š” ์ฟ ํ‚ค๋ฅผ ๋ฐ›์•„์„œ ์„ธ์…˜ ID๋ฅผ ํ™•์ธํ•˜๊ณ 
    • ์„ธ์…˜ ID์™€ ์ผ์น˜ํ•˜๋Š” ์œ ์ €๋ฅผ ์ฐพ์•„์•ผํ•œ๋‹ค.
    • ์ฆ‰ ์š”์ฒญ์ด ์žˆ์„๋•Œ๋งˆ๋‹ค ์„œ๋ฒ„๋Š” DB๋ฅผ ์กฐํšŒํ•œ๋‹ค
    • ๋•Œ๋ฌธ์— ์œ ์ €๊ฐ€ ๋Š˜์–ด๋‚  ์ˆ˜๋ก ๋” ๋งŽ์€ DB ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•„์š”ํ•˜๋‹ค
    • ์ด๋Ÿฐ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ํ† ํฐ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค

 

ํ† ํฐ Token


  • ํ† ํฐ์€ ๊ฐ„๋‹จํžˆ ๋งํ•˜๋ฉด ์š”์ƒํ•˜๊ฒŒ ์ƒ๊ธด ๋ฌธ์ž์—ด.
  • ์š”์ฒญํ•  ๋•Œ๋งˆ๋‹ค ํ† ํฐ์„ ์„œ๋ฒ„์— ๋ณด๋‚ด๊ณ , ์„œ๋ฒ„๋Š” ์„ธ์…˜ DB์—์„œ ํ† ํฐ๊ณผ ์ผ์น˜ํ•˜๋Š” ์œ ์ €(ํ˜น์€ ์ •๋ณด)๋ฅผ ์ฐพ๋Š”๋‹ค
  • JWT๋Š” ํ† ํฐ ํ˜•์‹์ค‘ ํ•˜๋‚˜
  • JWT๋กœ ์œ ์ € ์ธ์ฆ์„ ์ฒ˜๋ฆฌํ•˜๋ฉด ์„ธ์…˜ DB๋ฅผ ๊ฐ€์งˆ ํ•„์š” ์—†๊ณ , ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค๋ฅผ ์“ฐ์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

 

๋กœ๊ทธ์ธ ์˜ˆ์‹œ๋กœ ๋ณด๋Š” ์„ธ์…˜ vs JWT ์ฐจ์ด์ 

JWT๋Š” ํ—ค๋”(์•Œ๊ณ ๋ฆฌ์ฆ˜/ํ† ํฐ ํƒ€์ž…), ํŽ˜์ด๋กœ๋“œ(์ •๋ณด), ์„œ๋ช…(์œ ํšจํ•œ ํ† ํฐ์ธ์ง€ ๊ฒ€์ฆ) ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IlNtaXRoIiwiaWF0IjoxNTE2MjM5MDIyfQ.odnizKpao0oX_Ky8TJyDqrX3U3llMYGybySsJQjgMpY

 

  1. Smith๋ผ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์œ ์ €๋ช…, ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„œ๋ฒ„์— ๋ณด๋‚ธ๋‹ค. — ์—ฌ๊ธฐ๊นŒ์ง„ ์„ธ์…˜๊ณผ JWT๋Š” ๋™์ผํ•˜๋‹ค
  2. ์œ ์ €๋ช…, ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋งž๋‹ค๋ฉด ์„œ๋ฒ„๋Š” ์œ ์ € ID์— ๋Œ€ํ•ด ์‚ฌ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•ด '์‚ฌ์ธ'์„ ํ•œ๋‹ค — ์ด๋•Œ ์„œ๋ฒ„๋Š” DB์— ๋ญ”๊ฐ€๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ํ•˜์ง€ ์•Š๋Š”๋‹ค
  3. ์„œ๋ฒ„๋Š” '์‚ฌ์ธ๋œ ์ •๋ณด'๋ฅผ string ํ˜•ํƒœ๋กœ ์‘๋‹ตํ•œ๋‹ค — ์„ธ์…˜๊ณผ ๋‹ค๋ฅด๊ฒŒ JWT๋Š” DB๋ฅผ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๊ณ  ์ •๋ณด๋ฅผ ์‚ฌ์ธํ•˜๊ณ  ์ „๋‹ฌํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค.
  4. ์ฟ ํ‚ค๋Š” ๊ณต๊ฐ„ ์ œ์•ฝ์ด ์žˆ๋Š” ๋ฐ˜๋ฉด, JWT๋Š” ์ œ์•ฝ์ด ์—†์–ด ๋งค์šฐ ๊ธธ์–ด๋„ ๋ฌด๋ฐฉํ•˜๋‹ค
  5. ๊ทธ ํ›„ ์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ผ ๋•Œ ์„ธ์…˜ ID์ฒ˜๋Ÿผ '์‚ฌ์ธ๋œ ์ •๋ณด' ํ˜น์€ ํ† ํฐ์„ ์„œ๋ฒ„์— ๋ณด๋‚ธ๋‹ค
  6. ํ† ํฐ์„ ๋ฐ›์€ ์„œ๋ฒ„๋Š” ์‚ฌ์ธ์ด ์œ ํšจํ•œ์ง€๋งŒ ์ฒดํฌํ•œ ํ›„ ์ž์‹ ์˜ ์œ ์ €์ธ ๊ฒƒ์„ ์ธ์ฆํ•œ๋‹ค

 

์„ธ์…˜ ์ธ์ฆ์—์„œ ์„ธ์…˜์— ๋Œ€ํ•œ ๋ชจ๋“  ์ •๋ณด๋Š” ์„ธ์…˜ DB์— ์ €์žฅ๋œ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์—์„œ ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•˜๋ฉด ์„œ๋ฒ„๋Š” ์„ธ์…˜ ID๋ฅผ DB์—์„œ ์ฐพ๋Š”๋‹ค.

 

JWT์—์„œ ์„œ๋ฒ„๋Š” ์œ ์ €๋ฅผ ์ธ์ฆํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ํ† ํฐ์— ์ €์žฅํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ํ† ํฐ์„ ์œ ์ €(๋ธŒ๋ผ์šฐ์ €)์—๊ฒŒ ๋ณด๋‚ธ๋‹ค. ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•˜๋ฉด ์„œ๋ฒ„๋Š” DB๋ฅผ ๊ฑฐ์น ํ•„์š” ์—†์ด ํ•ด๋‹น ํ† ํฐ์ด ์œ ํšจํ•œ์ง€๋งŒ ๊ฒ€์ฆํ•˜๋ฉด ๋œ๋‹ค.

 

JWT์˜ Payload ๋ถ€๋ถ„์€ ์•”ํ˜ธํ™” ๋˜์ง€ ์•Š๋Š”๋‹ค. ์•”ํ˜ธํ™”ํ•˜๋ฉด ์•„๋ฌด๋„ ์ฝ์„ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค(base64 ๊ฐ’์„ ๋””์ฝ”๋”ฉํ•ด์„œ). JWT ํ† ํฐ ๋‚ด์šฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋น„๋ฐ€๋ฒˆํ˜ธ ๊ฐ™์€ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋Š” JWT์— ๋‘๋ฉด ์•ˆ๋œ๋‹ค.

 

์„ธ์…˜๊ณผ ํ† ํฐ์˜ ์žฅ๋‹จ์ 

๐Ÿ’ก JWT, Session ์–ธ์ œ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์ข‹์„๊นŒ?

 

  • JWT : ์„ธ์…˜์ด๋‚˜ DB ์—†์ด ์œ ์ €๋ฅผ ์ธ์ฆํ•  ๋•Œ ์ ํ•ฉ
  • Session : ์„œ๋น„์Šค ๊ทœ๋ชจ๊ฐ€ ์ปค์ ธ์„œ ์œ ์ € ๊ณ„์ •์„ ๋” ์ž˜ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์ ํ•ฉ

 

Session

  • ์„ธ์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ๋กœ๊ทธ์ธํ•œ ์œ ์ € ์ •๋ณด๋ฅผ ์„ธ์…˜ DB์— ์ €์žฅํ•˜๋ฏ€๋กœ ์ด๋ฅผ ์ด์šฉํ•ด ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ํŠน์ • ์œ ์ €๋ฅผ ์ซ“์•„๋‚ด๊ธฐ(์„ธ์…˜์„ ์‚ญ์ œํ•˜๋ฉด ๋œ๋‹ค)
    • ๋กœ๊ทธ์ธํ•œ ๋””๋ฐ”์ด์Šค ๋ชฉ๋ก์„ ๋ณด์—ฌ์ฃผ๊ณ , ํŠน์ • ๋””๋ฐ”์ด์Šค์—์„œ ๊ฐ•์ œ ๋กœ๊ทธ์•„์›ƒ(์ธ์Šคํƒ€๊ทธ๋žจ ๋“ฑ)
    • ๊ณ„์ • ๊ณต์œ  ์ˆซ์ž ์ œํ•œ(๋„ทํ”Œ๋ฆญ์Šค ๋“ฑ)
  • ํ•˜์ง€๋งŒ ์ด๋ฅผ ์œ„ํ•ด DB๋ฅผ ๊ตฌ๋งค / ์œ ์ง€ํ•ด์•ผํ•˜๊ณ , ์œ ์ €๊ฐ€ ๋Š˜์–ด๋‚ ์ˆ˜๋ก DB๋„ ์ปค์ ธ์•ผ ํ•˜๋ฏ€๋กœ ๊ทธ์—๋”ฐ๋ฅธ ๋น„์šฉ์ด ๋งŽ์ด๋“œ๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค(๋ณดํ†ต ์ €๋ ดํ•˜๊ณ  ๋น ๋ฅธ Redis๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค)

 

JWT

  • JWT๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ƒ์„ฑ๋œ ํ† ํฐ์„ ์ถ”์ ํ•˜์ง€ ์•Š๋Š”๋‹ค.
    • ์„œ๋ฒ„๊ฐ€ ์•„๋Š” ๊ฒƒ์€ ํ† ํฐ์ด ์œ ํšจํ•œ์ง€ ์—ฌ๋ถ€๋ฟ์ด๋‹ค.
    • JWT์—์„  DB๋ฅผ ๋”ฐ๋กœ ์‚ด ํ•„์š”๊ฐ€ ์—†๋‹ค.
    • ํ•˜์ง€๋งŒ ํ† ํฐ์€ ๋งŒ๋ฃŒ๋˜๊ธฐ ์ „๊นŒ์ง€ ๊ณ„์† ์œ ํšจํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ•์ œ ๋กœ๊ทธ์•„์›ƒ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์—†๋‹ค.
  • JWT๋Š” DB ์—†์ด โžŠ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์ธํ•˜๊ณ  โž‹์œ ์ €์—๊ฒŒ ๋ณด๋‚ด๊ณ  ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ๋Œ๋ ค๋ฐ›์„ ๋•Œ โžŒ์œ ํšจ์„ฑ์„ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.
    • ์ฝ”๋กœ๋‚˜ QR ์ฒดํฌ์ธ์€ JWT๊ฐ€ ๋“ค์–ด๊ฐ„ QR ์ฝ”๋“œ๋‹ค.
    • ์ด์ฒ˜๋Ÿผ JWT๋Š” ์„ธ์…˜์ด๋‚˜ DB ์—†์ด ์œ ์ €๋ฅผ ์ธ์ฆํ•˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ๊ณณ์—์„œ ์“ฐ์ธ๋‹ค

 

๋ ˆํผ๋Ÿฐ์Šค


์„ธ์…˜ vs ํ† ํฐ vs ์ฟ ํ‚ค? ๊ธฐ์ดˆ๊ฐœ๋… ์žก์•„๋“œ๋ฆผ. 10๋ถ„ ์ˆœ์‚ญ! | ๋…ธ๋งˆ๋“œ์ฝ”๋”    

 


๊ธ€ ์ˆ˜์ •์‚ฌํ•ญ์€ ๋…ธ์…˜ ํŽ˜์ด์ง€์— ๊ฐ€์žฅ ๋น ๋ฅด๊ฒŒ ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค. ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•ด ์ฃผ์„ธ์š”
๋ฐ˜์‘ํ˜•