[๐Ÿ’ป ์ฝ”๋“œ์Šคํ…Œ์ด์ธ  FE 44๊ธฐ]ํ•ด์‹ฑ, ํ† ํฐ

JiEunยท2023๋…„ 5์›” 3์ผ
0
post-thumbnail

โœ”๏ธ ์‹œ์ž‘

ํ•ด์‹ฑ, ์„ธ์…˜์˜ ํ•œ๊ณ„๋ฅผ ๋ณด์™„ํ•œ ํ† ํฐ์— ๋Œ€ํ•ด ํ•™์Šตํ–ˆ๋‹ค.


๐Ÿ“ ์•Œ๊ฒŒ๋œ ์ 

๐Ÿ‘พ ํ•ด์‹ฑ (Hashing)

  • ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ์•”ํ˜ธํ™” ๋ฐฉ์‹ ์ค‘์— ํ•˜๋‚˜
  • ๋ณตํ˜ธํ™”๊ฐ€ ๊ฐ€๋Šฅํ•œ ๋‹ค๋ฅธ ์•”ํ˜ธํ™” ๋ฐฉ์‹๋“ค๊ณผ ๋‹ฌ๋ฆฌ, ์•”ํ˜ธํ™”๋งŒ ๊ฐ€๋Šฅ
  • ํ•ด์‹œ ํ•จ์ˆ˜(Hash Function)๋ฅผ ์‚ฌ์šฉํ•ด ์•”ํ˜ธํ™”๋ฅผ ์ง„ํ–‰

ํŠน์ง•

  • ํ•ญ์ƒ ๊ฐ™์€ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด ๋ฆฌํ„ด
  • ์„œ๋กœ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด์— ๋™์ผํ•œ ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ˜๋“œ์‹œ ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์˜จ๋‹ค.
    (์„œ๋กœ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด >> ๋‹ค๋ฅธ ๊ฒฐ๊ณผ ๊ฐ’)
  • ๋™์ผํ•œ ๋ฌธ์ž์—ด์— ๋™์ผํ•œ ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•ญ์ƒ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์˜จ๋‹ค.
    (๋™์ผํ•œ ๋ฌธ์ž์—ด >> ๊ฐ™์€ ๊ฒฐ๊ณผ ๊ฐ’)
๋น„๋ฐ€๋ฒˆํ˜ธํ•ด์‹œ ํ•จ์ˆ˜(SHA1) ๋ฆฌํ„ด ๊ฐ’
โ€˜passwordโ€™โ€˜5BAA61E4C9B93F3F0682250B6CF8331B7EE68FD8โ€™
โ€˜Passwordโ€™โ€˜8BE3C943B1609FFFBFC51AAD666D0A04ADF83C9Dโ€™
โ€˜kimcodingโ€™โ€˜61D17C8312E8BC24D126BE182BC674704F954C5Aโ€™

๐Ÿ”— SHA1 ํ•จ์ˆ˜ ์ง์ ‘ ์‚ฌ์šฉํ•ด ๋ณด๊ธฐ

๋ ˆ์ธ๋ณด์šฐ ํ…Œ์ด๋ธ”๊ณผ ์†”ํŠธ(Salt)

  • ํ•ญ์ƒ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์˜จ๋‹ค๋Š” ํŠน์„ฑ์„ ์ด์šฉํ•ด ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ๊ฑฐ์น˜๊ธฐ ์ด์ „์˜ ๊ฐ’์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ๊ธฐ๋กํ•ด ๋†“์€ ํ‘œ์ธ ๋ ˆ์ธ๋ณด์šฐ ํ…Œ์ด๋ธ”์ด ์กด์žฌํ•œ๋‹ค.
  • ๋ ˆ์ธ๋ณด์šฐ ํ…Œ์ด๋ธ”์— ๊ธฐ๋ก๋œ ๊ฐ’์˜ ๊ฒฝ์šฐ ์œ ์ถœ์ด ๋˜์—ˆ์„ ๋•Œ ํ•ด์‹ฑ์„ ํ–ˆ๋”๋ผ๋„ ํ•ด์‹ฑ ์ด์ „์˜ ๊ฐ’์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋ณด์•ˆ์ƒ ์œ„ํ˜‘ ๋  ์ˆ˜ ์žˆ๋‹ค.

์ด๋•Œ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์†”ํŠธ(Salt) ์ด๋‹ค.

  • ์†”ํŠธ๋Š” ์†Œ๊ธˆ์ด๋ผ๋Š” ๋œป์œผ๋กœ, ๋ง ๊ทธ๋Œ€๋กœ ์†Œ๊ธˆ์„ ์น˜๋“ฏ ํ•ด์‹ฑ ์ด์ „ ๊ฐ’์— ์ž„์˜์˜ ๊ฐ’์„ ๋”ํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ์ถœ๋˜๋”๋ผ๋„ ํ•ด์‹ฑ ์ด์ „์˜ ๊ฐ’์„ ์•Œ์•„๋‚ด๊ธฐ ๋”์šฑ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. (๋‹ค๋ฅธ ์ž„์˜์˜ ๊ฐ’์„ ๋”ํ•œ๋‹ค.)
๋น„๋ฐ€๋ฒˆํ˜ธํ•ด์‹œ ํ•จ์ˆ˜(SHA1) ๋ฆฌํ„ด ๊ฐ’
โ€˜passwordโ€™ + โ€˜saltโ€™โ€˜C88E9C67041A74E0357BEFDFF93F87DDE0904214โ€™
โ€˜Passwordโ€™ + โ€˜saltโ€™โ€˜38A8FDE622C0CF723934BA7138A72BEACCFC69D4โ€™
โ€˜kimcodingโ€™ + โ€˜saltโ€™โ€˜8607976121653D418DDA5F6379EB0324CA8618E6โ€™

ํ•ด์‹ฑ์˜ ๋ชฉ์ 

๋ณตํ˜ธํ™”๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•œ ์•”ํ˜ธํ™” ๋ฐฉ์‹์ธ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฐ”๋กœ
๋ฐ์ดํ„ฐ ๊ทธ ์ž์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ๋™์ผํ•œ ๊ฐ’์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ์—ฌ๋ถ€๋งŒ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋‹ค.

  • ํ•ด์‹ฑํ•œ ๊ฐ’๋ผ๋ฆฌ ๋น„๊ตํ•ด์„œ ์ผ์น˜ ํ•˜๋Š”์ง€ ํ™•์ธ ํ™•์ธํ•œ๋‹ค.
  • ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃจ์–ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์—์„œ ๋ฐ์ดํ„ฐ ์œ ์ถœ์˜ ์œ„ํ—˜์„ฑ์€ ์ค„์ด๊ณ 
  • ๋ฐ์ดํ„ฐ์˜ ์œ ํšจ์„ฑ์„ ๊ฒ€์ฆํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ๋˜๋Š” ๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™” ๋ฐฉ์‹

๐Ÿช™ ํ† ํฐ(Token)

๊ธฐ์กด ์„ธ์…˜ ๊ธฐ๋ฐ˜ ์ธ์ฆ์ด ๊ฐ€์ง€๊ณ  ์žˆ๋˜ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ณ ์ž ๊ณ ์•ˆ ๋๋‹ค.
(์„œ๋ฒ„ ๋ถ€๋‹ด์„ ์ค„์ด๊ธฐ ์œ„ํ•ด)

  • ์‚ฌ์šฉ์ž ์ธ์ฆ ์ •๋ณด(Authentication)์™€ ๊ถŒํ•œ ์ •๋ณด(Authorization)๋ฅผ ํฌํ•จํ•œ ์ •๋ณด๋ฅผ ๋‹ด์€ ์•”ํ˜ธํ™”๋œ ๋ฌธ์ž์—ด
  • ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์ธ์ฆ ๋ฐฉ์‹ ์ค‘ ํ•˜๋‚˜
  • ์‚ฌ์šฉ์ž์˜ ์ธ์ฆ ์ •๋ณด๋ฅผ ์„œ๋ฒ„๊ฐ€ ์•„๋‹Œ ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์„ธ์…˜์˜ ์ธ์ฆ ๋ฐฉ์‹๊ณผ ๋น„๊ตํ–ˆ์„ ๋•Œ ์„œ๋ฒ„์˜ ๋ถ€ํ•˜๋‚˜ ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ ๋ฌธ์ œ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.

์žฅ์ 

๋ฌด์ƒํƒœ์„ฑ

  • ์„œ๋ฒ„๊ฐ€ ์œ ์ €์˜ ์ธ์ฆ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ์„œ๋ฒ„๋Š” ๋น„๋ฐ€ ํ‚ค๋ฅผ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ์—์„œ ๋ณด๋‚ธ ํ† ํฐ์˜ ์œ ํšจ์„ฑ๋งŒ ๊ฒ€์ฆํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฌด์ƒํƒœ์ ์ธ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋‹ค.

ํ™•์žฅ์„ฑ

  • ๋‹ค์ˆ˜์˜ ์„œ๋ฒ„๊ฐ€ ๊ณตํ†ต๋œ ์„ธ์…˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์งˆ ํ•„์š”๊ฐ€ ์—†๋‹ค(์„œ๋ฒ„๋ฅผ ํ™•์žฅํ•˜๊ธฐ ๋” ์šฉ์ด)

์–ด๋””์„œ๋‚˜ ํ† ํฐ ์ƒ์„ฑ ๊ฐ€๋Šฅ

  • ํ† ํฐ ์ƒ์„ฑ/๊ฒ€์ฆ์ด ํ•˜๋‚˜์˜ ์„œ๋ฒ„์—์„œ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์•„๋„ ๋˜๊ธฐ์— ํ† ํฐ ์ƒ์„ฑ๋งŒ์„ ๋‹ด๋‹นํ•˜๋Š” ์„œ๋ฒ„๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋‹ค.(์ž˜ ํ™œ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ์„œ๋น„์Šค ๊ฐ„์˜ ๊ณตํ†ต๋œ ์ธ์ฆ ์„œ๋ฒ„๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.)

๊ถŒํ•œ ๋ถ€์—ฌ์— ์šฉ์ด

  • ์ธ์ฆ ์ƒํƒœ, ์ ‘๊ทผ ๊ถŒํ•œ ๋“ฑ ๋‹ค์–‘ํ•œ ์ •๋ณด๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๊ธฐ์— ์‚ฌ์šฉ์ž ๊ถŒํ•œ ๋ถ€์—ฌ์— ์šฉ์ด(์ž˜ ํ™œ์šฉํ•ด ์–ด๋“œ๋ฏผ ๊ถŒํ•œ ๋ถ€์—ฌ ๋ฐ ์ •๋ณด์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๋„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.)

JWT (JSON Web Token)

  • ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ ๊ตฌํ˜„ ์‹œ ๋Œ€ํ‘œ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์ˆ 
  • JSON ๊ฐ์ฒด์— ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์ด๋ฅผ ํ† ํฐ์œผ๋กœ ์•”ํ˜ธํ™”ํ•ด ์ „์†กํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ 
  • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ผ ๋•Œ ์ธ์ฆ ์ •๋ณด๋ฅผ ์•”ํ˜ธํ™”๋œ JWT ํ† ํฐ์œผ๋กœ ์ œ๊ณตํ•˜๊ณ ,
    ์„œ๋ฒ„๋Š” ์ด ํ† ํฐ์„ ๊ฒ€์ฆํ•ด ์ธ์ฆ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

JWT์˜ ๊ตฌ์„ฑ

  • .์œผ๋กœ ๋‚˜๋ˆ ์ง€ ์„ธ ๋ถ€๋ถ„์ด ์กด์žฌํ•œ๋‹ค.
  • (ex - aaaa.bbbb.cccc) ๊ฐ๊ฐ Header, Payload, Signature๋ผ๊ณ  ํ•œ๋‹ค.

1. Header

  • HTTP์˜ ํ—ค๋”์ฒ˜๋Ÿผ ํ•ด๋‹น ํ† ํฐ ์ž์ฒด๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ด๊ธด๋‹ค.
  • ํ† ํฐ์˜ ์ข…๋ฅ˜, ์‹œ๊ทธ๋‹ˆ์ฒ˜๋ฅผ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉํ•  ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ JSON ํ˜•ํƒœ๋กœ ์ž‘์„ฑ
{
  "alg": "HS256",
  "typ": "JWT"
}

base64 ๋ฐฉ์‹์œผ๋กœ ์ธ์ฝ”๋”ฉํ•˜๋ฉด JWT์˜ ์ฒซ ๋ฒˆ์งธ ๋ถ€๋ถ„์ธ Header๊ฐ€ ์™„์„ฑ๋œ๋‹ค.

2. Payload

  • TTP์˜ ํŽ˜์ด๋กœ๋“œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ „๋‹ฌํ•˜๋ ค๋Š” ๋‚ด์šฉ๋ฌผ์„ ๋‹ด๊ณ  ์žˆ๋Š” ๋ถ€๋ถ„์ด๋‹ค.
  • ์ •๋ณด์— ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ์ง€์— ๋Œ€ํ•œ ๊ถŒํ•œ, ์œ ์ €์˜ ์ด๋ฆ„๊ณผ ๊ฐ™์€ ๊ฐœ์ธ์ •๋ณด, ํ† ํฐ์˜ ๋ฐœ๊ธ‰ ์‹œ๊ฐ„ ๋ฐ ๋งŒ๋ฃŒ ์‹œ๊ฐ„ ๋“ฑ์˜ ์ •๋ณด๋“ค์„ JSON ํ˜•ํƒœ๋กœ ๋‹ด๋Š”๋‹ค.
{
  "sub": "someInformation",
  "name": "phillip",
  "iat": 151623391
}

JSON ๊ฐ์ฒด๋ฅผ base64๋กœ ์ธ์ฝ”๋”ฉํ•˜๋ฉด JWT์˜ ๋‘ ๋ฒˆ์งธ ๋ถ€๋ถ„์ธ Payload๊ฐ€ ์™„์„ฑ๋œ๋‹ค.

base64 ๋ฐฉ์‹์€ ์›ํ•œ๋‹ค๋ฉด ์–ผ๋งˆ๋“ ์ง€ ๋””์ฝ”๋”ฉํ•  ์ˆ˜ ์žˆ๋Š” ์ธ์ฝ”๋”ฉ ๋ฐฉ์‹์ด๋‹ค.

3. Signature

  • ํ† ํฐ์˜ ๋ฌด๊ฒฐ์„ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„์ด๋‹ค.
  • Header์™€ Payload๊ฐ€ ์™„์„ฑ ๋˜์—ˆ์„ ๊ฒฝ์šฐ Signature๋Š” ์ด๋ฅผ ์„œ๋ฒ„์˜ ๋น„๋ฐ€ ํ‚ค(์•”ํ˜ธํ™”์— ์ถ”๊ฐ€ํ•  salt)์™€ Header์—์„œ ์ง€์ •ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด ํ•ด์‹ฑํ•œ๋‹ค.
// HMAC SHA256 ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด Signature๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ƒ์„ฑ
HMACSHA256(base64UrlEncode(header) + '.' + base64UrlEncode(payload), secret);

์†์ด๊ธฐ ์œ„ํ•ด ํ† ํฐ์˜ Payload๋ฅผ ๋ณ€์กฐํ•˜๋Š” ๋“ฑ์˜ ์‹œ๋„ํ•ด๋„ ํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•  ๋•Œ ์‚ฌ์šฉํ•œ Secret์„ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๊ณ  ์žˆ์ง€ ๋ชปํ•œ๋‹ค๋ฉด ์œ ํšจํ•œ Signature๋ฅผ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์—†๊ธฐ์— ์„œ๋ฒ„๋Š” Signature๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ๋‹จ๊ณ„์—์„œ ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ํ† ํฐ์ž„์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ๋‹ค.

ํ† ํฐ ์ธ์ฆ ๋ฐฉ์‹์˜ ํ•œ๊ณ„

Signature์„ ์‚ฌ์šฉํ•ด ์œ„์กฐ๋œ ํ† ํฐ์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์ง€๋งŒ, ํ† ํฐ ์ž์ฒด๊ฐ€ ํƒˆ์ทจ๋œ๋‹ค๋ฉด ํ† ํฐ ์ธ์ฆ ๋ฐฉ์‹์˜ ํ•œ๊ณ„๊ฐ€ ๋“œ๋Ÿฌ๋‚œ๋‹ค.

๋ฌด์ƒํƒœ์„ฑ

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

์œ ํšจ ๊ธฐ๊ฐ„

  • ํ† ํฐ์ด ํƒˆ์ทจ๋˜๋Š” ์ƒํ™ฉ์„ ๋Œ€๋น„ํ•ด ์œ ํšจ ๊ธฐ๊ฐ„์„ ์งง๊ฒŒ ์„ค์ •ํ•˜๋ฉด, ์‚ฌ์šฉ์ž๋Š” ํ† ํฐ์ด ๋งŒ๋ฃŒ๋  ๋•Œ๋งˆ๋‹ค ๋‹ค์‹œ ๋กœ๊ทธ์ธ์„ ์ง„ํ–‰ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ข‹์ง€ ์•Š์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ œ๊ณตํ•œ๋‹ค.
    (์œ ํšจ ๊ธฐ๊ฐ„์„ ๊ธธ๊ฒŒ ์„ค์ •ํ•˜๋ฉด ํƒˆ์ทจ๋  ๊ฒฝ์šฐ ๋” ์น˜๋ช…์ ์œผ๋กœ ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. - ๋ฌด์ƒํƒœ์„ฑ)

ํ† ํฐ์˜ ํฌ๊ธฐ

  • ํ† ํฐ์— ์—ฌ๋Ÿฌ ์ •๋ณด๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋งŒํผ, ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์œผ๋ฉด ๊ทธ๋งŒํผ ์•”ํ˜ธํ™”ํ•˜๋Š” ๊ณผ์ •๋„ ๊ธธ์–ด์ง€๊ณ  ํ† ํฐ์˜ ํฌ๊ธฐ๋„ ์ปค์ง€๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ ๋น„์šฉ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค.

ํ† ํฐ ์ธ์ฆ์˜ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•๋“ค

Access Token

  • ์„œ๋ฒ„์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ํ† ํฐ์œผ๋กœ ์•ž์„œ ๋‹ค๋ฃฌ ํ† ํฐ๊ณผ ๋น„์Šทํ•œ ์—ญํ• ์„ ํ•œ๋‹ค. (๋ณด์•ˆ์„ ์œ„ํ•ด ๋ณดํ†ต 24์‹œ๊ฐ„ ์ •๋„์˜ ์งง์€ ์œ ํšจ๊ธฐ๊ฐ„์ด ์„ค์ •๋˜์–ด ์žˆ๋‹ค.)

Refresh Token

  • ์„œ๋ฒ„ ์ ‘๊ทผ์„ ์œ„ํ•œ ํ† ํฐ์ด ์•„๋‹Œ ์•ก์„ธ์Šค ํ† ํฐ์ด ๋งŒ๋ฃŒ๋˜์—ˆ์„ ๋•Œ ์ƒˆ๋กœ์šด ์•ก์„ธ์Šค ํ† ํฐ์„ ๋ฐœ๊ธ‰๋ฐ›๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ํ† ํฐ(์•ก์„ธ์Šค ํ† ํฐ๋ณด๋‹ค ๊ธด ์œ ํšจ๊ธฐ๊ฐ„์„ ์„ค์ •ํ•œ๋‹ค.)
  • ๋ฆฌํ”„๋ ˆ์‹œ ํ† ํฐ๋„ ๋ชจ๋“  ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด ์ฃผ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์„ธ์…˜์ฒ˜๋Ÿผ ์„œ๋ฒ„์— ์ €์žฅํ•˜๊ณ  ์ด์— ๋Œ€ํ•œ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ๋„ ํ•œ๋‹ค.

๋‘ ๊ฐ€์ง€์˜ ๊ฐ๊ธฐ ๋‹ค๋ฅธ ํ† ํฐ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ์•ก์„ธ์Šค ํ† ํฐ์ด ๋งŒ๋ฃŒ๋˜๋”๋ผ๋„ ๋ฆฌํ”„๋ ˆ์‹œ ํ† ํฐ์˜ ์œ ํšจ๊ธฐ๊ฐ„์ด ๋‚จ์•„ ์žˆ๋‹ค๋ฉด ์‚ฌ์šฉ์ž๋Š” ๋‹ค์‹œ ๋กœ๊ทธ์ธ์„ ํ•  ํ•„์š” ์—†์ด ์ง€์†ํ•ด์„œ ์ธ์ฆ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.


โœ๏ธ ๋งˆ์น˜๋ฉฐ

์ด์ „์— ์ฟ ํ‚ค, ์„ธ์…˜์„ ํ•™์Šตํ–ˆ๊ณ  ์˜ค๋Š˜ ํ† ํฐ์— ๋Œ€ํ•ด ํ•™์Šตํ–ˆ๋‹ค.

๋ชจ๋‘ ๋ณด์•ˆ์— ๋Œ€ํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ณด์™„๋œ ๋ฐฉ๋ฒ•์ด๋ผ๋„
์™„๋ฒฝํ•˜๊ฒŒ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์—†๋‹ค.

๊ฐœ๋ฐœ๊ฐ€์ž ๊ตฌํ˜„ํ•˜๋ ค๋Š” ์„œ๋น„์Šค์— ๋”ฐ๋ผ ์–ด๋–ค ์ธ์ฆ ๋ฐฉ์‹์ด ๋” ์ ์ ํ• ์ง€ ํŒ๋‹จ ํ•  ์ˆ˜ ์žˆ์–ด์•ผ๊ฒ ๋‹ค.

profile
๐Ÿ’ป ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๋ชฉํ‘œ๋กœ ์„ฑ์žฅ ์ค‘! (์•Œ์•„๋ดค๋˜ ๋‚ด์šฉ ๋“ฑ์„ ์ •๋ฆฌํ•˜๊ธฐ)

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