Skip to content

[React] Session, Token

Kim Hyewon edited this page Jun 10, 2022 · 1 revision

Authentication(์ธ์ฆ)

  • ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์‚ฌํ•ญ์ด ๊ถŒํ•œ์ด ์žˆ๋Š”์ง€ ํ™•์ธ
  • login

Authorization(์ธ๊ฐ€)

  • ์ธ์ฆ์„ ๋ฐ›์€ ์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ• ๋•Œ ์ธ์ฆ๋ฐ›์€ ์ƒํƒœ๋ฅผ ์œ ์ง€์‹œํ‚ค๋Š” ๊ฒƒ
  • login ์ƒํƒœ ์œ ์ง€

Session

  • session id๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์–ด๋–ค ์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋ฒ„์— ๋กœ๊ทธ์ธ๋˜์–ด ์žˆ์Œ์„ ์ง€์†๋˜๋Š” ์ƒํƒœ๋ฅผ ์„ธ์…˜์ด๋ผ๊ณ  ํ•จ

Authenticaion ๋ฐฉ๋ฒ•

  • login์— ์„ฑ๊ณตํ•˜๋ฉด session-id ๋ฐœ๊ธ‰

Authorization ๋ฐฉ๋ฒ•

  • ์„œ๋ฒ„์— ์š”์ฒญ ํ• ๋•Œ๋งˆ๋‹ค session-id๋ฅผ ํฌํ•จํ•˜์—ฌ ๋ณด๋ƒ„
  • ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ณด๋‚ธ session-id์™€ server๊ฐ€ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธ

๋ฌธ์ œ์ 

  • ์„œ๋ฒ„๊ฐ€ ์—ฌ๋Ÿฌ๋Œ€์ธ ๊ฒฝ์šฐ ์„ธ์…˜ ์œ ์ง€๊ฐ€ ํž˜๋“ฌ

Token

  • JWT: json web token
  • ์„œ๋ฒ„๊ฐ€ ์•„๋‹Œ ํด๋ผ์ด์–ธํŠธ์—์„œ ์ƒํƒœ๋ฅผ ๊ธฐ์–ต
  • SSO
  • header.payload.verify signature๋กœ ๊ตฌ์„ฑ
  • payload: ์‚ฌ์šฉ์ž์˜ ๋‹‰๋„ค์ž„, ์„œ๋น„์Šค์ƒ์˜ ๋ ˆ๋ฒจ, ๊ด€๋ฆฌ์ž ์—ฌ๋ถ€์™€ ๊ฐ™์€ ์ •๋ณด

Authentication

  • ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ์— ์„ฑ๊ณตํ•˜๋ฉด ํ† ํฐ ๋ฐœํ–‰ but ์„œ๋ฒ„๋Š” ๊ธฐ์–ตํ•˜๊ณ  ์žˆ์ง€ ์•Š์Œ

Authorization ๋ฐฉ๋ฒ•

  • JWT๋Š” ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๊ฐ„ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ๋•Œ Http ๋ฆฌํ€˜์ŠคํŠธ ํ—ค๋”์— JSON ํ† ํฐ์„ ๋„ฃ์€ ํ›„ ์„œ๋ฒ„๋Š” ๋ณ„๋„์˜ ์ธ์ฆ ๊ณผ์ •์—†์ด ํ—ค๋”์— ํฌํ•จ๋˜์–ด ์žˆ๋Š” JWT ์ •๋ณด๋ฅผ ํ†ตํ•ด ์ธ์ฆํ•ฉ๋‹ˆ๋‹ค.
  • token์˜ payload๋ฅผ ํ™•์ธ, ํ† ํฐ์— ํ•„์š”ํ•œ ๋ชจ๋“  ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ์–ด ์ฐธ์กฐ(์ ์–ด๋„ ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๋ถ€์—ฌ๋ฅผ ์œ„ํ•ด)

๋ฌธ์ œ์ 

  • ํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•œ ํ›„ ์„œ๋ฒ„์—์„œ ํ†ต์ œ๋ฅผ ๋ชปํ•จ

์ฐธ๊ณ 

JWT ํ† ํฐ

JWT ์ธ์ฆ flow

Clone this wiki locally