Login Process

์ •์Šน์›ยท2023๋…„ 4์›” 24์ผ
0
post-thumbnail

๐Ÿ“’ ๋ชฉ์ฐจ

  • ๐Ÿ“Œ ํ† ํฐ์„ ํ†ตํ•œ ๋กœ๊ทธ์ธ ํ”„๋กœ์„ธ์Šค (Login Process)

๐Ÿ“Œ ํ† ํฐ์„ ํ†ตํ•œ ๋กœ๊ทธ์ธ ํ”„๋กœ์„ธ์Šค (Login Process)

  1. ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ์„ ํ•œ๋‹ค.

  2. ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ID, PWD๋ฅผ ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ๋น„๊ตํ•œ๋‹ค (์ธ๊ฐ€)

  3. ๋กœ๊ทธ์ธ์ด ์™„๋ฃŒ๋˜๋ฉด access token๊ณผ refresh token์„ ๋ฐœ๊ธ‰ํ•œ๋‹ค.

    • access token

      • ๋กœ๊ทธ์ธํ•œ ์œ ์ €๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํšจ๊ธฐ๊ฐ„์ด ์žˆ๋Š” access token์„ ๋ฐœ๊ธ‰ํ•œ๋‹ค.
      • payload๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•œ๋‹ค.
    • refresh token

      • ์œ ํšจ๊ธฐ๊ฐ„์ด ์งง์€ access token์€ ์‚ฌ์šฉ์ž๋กœ ํ•˜์—ฌ๊ธˆ ๋กœ๊ทธ์ธ์„ ์ž์ฃผ ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— refresh token์„ ํ†ตํ•ด access token์ด ๋งŒ๋ฃŒ๋˜์—ˆ์„ ๋•Œ, ์ƒˆ๋กœ ๋ฐœ๊ธ‰ํ•ด์ฃผ๋Š” ์—ด์‡ ๊ฐ€ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ access token๋ณด๋‹ค ์œ ํšจ๊ธฐ๊ฐ„์ด ๊ธธ์–ด์•ผ ํ•œ๋‹ค.
      • ์ฟ ํ‚ค๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•œ๋‹ค.
  4. ๋งŒ๋ฃŒ๋œ access token์„ ์ฒจ๋ถ€ํ•˜์—ฌ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค.

  5. ์„œ๋ฒ„๊ฐ€ ์ธ๊ฐ€๋ฅผ ํ•ด๋ณด๋ฉด์„œ ํ† ํฐ์ด ๋งŒ๋ฃŒ๋œ ๊ฒƒ์„ ํ™•์ธํ•˜๊ณ  ์—๋Ÿฌ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

    access token์˜ ์œ ํšจ๊ธฐ๊ฐ„ ๋งŒ๋ฃŒ๋กœ ์ธํ•ด ์—๋Ÿฌ๊ฐ€ ๋ฐ˜ํ™˜๋˜๋Š” ๊ฒƒ์€ refresh token์„ ํ†ตํ•ด access token์„ ์žฌ๋ฐœ๊ธ‰ ๋ฐ›๋Š” API๋ฅผ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

  6. ํ† ํฐ์ด ๋งŒ๋ฃŒ๋˜์—ˆ์Œ์„ ํ™•์ธํ•˜๊ณ  ํ† ํฐ ์žฌ๋ฐœ๊ธ‰ ์š”์ฒญ์„ ์ฟ ํ‚ค์™€ ํ•จ๊ป˜ ๋ณด๋‚ธ๋‹ค.

  7. ํ์นด์•  refresh token์„ ํ™•์ธํ•˜์—ฌ ์ƒˆ๋กœ์šด access token์„ ๋ฐœ๊ธ‰ํ•ด์„œ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

  8. ์žฌ๋ฐœ๊ธ‰๋œ ํ† ํฐ๊ณผ ํ•จ๊ป˜ ์‹คํŒจํ•œ ์š”์ฒญ์— ๋Œ€ํ•ด ์žฌ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค.

  9. ์ •์ƒ์ ์œผ๋กœ ์š”์ฒญ์— ๋Œ€ํ•œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๐Ÿ“Œ ์ฐธ์กฐ

https://codebootcamp.co.kr/

0๊ฐœ์˜ ๋Œ“๊ธ€