# OAuth



Open Authorization


์ธํ„ฐ๋„ท ์‚ฌ์šฉ์ž๋“ค์ด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š๊ณ , ๋‹ค๋ฅธ ์›น์‚ฌ์ดํŠธ ์ƒ์˜ ์ž์‹ ๋“ค์˜ ์ •๋ณด์— ๋Œ€ํ•ด ์›น์‚ฌ์ดํŠธ๋‚˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•  ์ˆ˜์žˆ๋Š” ๊ฐœ๋ฐฉํ˜• ํ‘œ์ค€ ๋ฐฉ๋ฒ•


์ด๋Ÿฌํ•œ ๋งค์ปค๋‹ˆ์ฆ˜์€ ๊ตฌ๊ธ€, ํŽ˜์ด์Šค๋ถ, ํŠธ์œ„ํ„ฐ ๋“ฑ์ด ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ํƒ€์‚ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์›น์‚ฌ์ดํŠธ์˜ ๊ณ„์ •์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ด์ค€๋‹ค.



# ์‚ฌ์šฉ ์šฉ์–ด


  • ์‚ฌ์šฉ์ž : ๊ณ„์ •์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฐœ์ธ

  • ์†Œ๋น„์ž : OAuth๋ฅผ ์‚ฌ์šฉํ•ด ์„œ๋น„์Šค ์ œ๊ณต์ž์—๊ฒŒ ์ ‘๊ทผํ•˜๋Š” ์›น์‚ฌ์ดํŠธ or ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

  • ์„œ๋น„์Šค ์ œ๊ณต์ž : OAuth๋ฅผ ํ†ตํ•ด ์ ‘๊ทผ์„ ์ง€์›ํ•˜๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

  • ์†Œ๋น„์ž ๋น„๋ฐ€๋ฒˆํ˜ธ : ์„œ๋น„์Šค ์ œ๊ณต์ž์—์„œ ์†Œ๋น„์ž๊ฐ€ ์ž์‹ ์ž„์„ ์ธ์ฆํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค

  • ์š”์ฒญ ํ† ํฐ : ์†Œ๋น„์ž๊ฐ€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ‘๊ทผ๊ถŒํ•œ์„ ์ธ์ฆ๋ฐ›๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์ •๋ณด๊ฐ€ ๋‹ด๊ฒจ์žˆ์Œ

  • ์ ‘๊ทผ ํ† ํฐ : ์ธ์ฆ ํ›„์— ์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋น„์Šค ์ œ๊ณต์ž๊ฐ€ ์•„๋‹Œ ์†Œ๋น„์ž๋ฅผ ํ†ตํ•ด ๋ณดํ˜ธ ์ž์›์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค ๊ฐ’


ํ† ํฐ ์ข…๋ฅ˜๋กœ๋Š” Access Token๊ณผ Refresh Token์ด ์žˆ๋‹ค.

Access Token์€ ๋งŒ๋ฃŒ์‹œ๊ฐ„์ด ์žˆ๊ณ  ๋๋‚˜๋ฉด ๋‹ค์‹œ ์š”์ฒญํ•ด์•ผ ํ•œ๋‹ค. Refresh Token์€ ๋งŒ๋ฃŒ๋˜๋ฉด ์•„์˜ˆ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ง„ํ–‰ํ•ด์•ผ ํ•œ๋‹ค.


# ์ธ์ฆ ๊ณผ์ •


์†Œ๋น„์ž <-> ์„œ๋น„์Šค ์ œ๊ณต์ž

  1. ์†Œ๋น„์ž๊ฐ€ ์„œ๋น„์Šค ์ œ๊ณต์ž์—๊ฒŒ ์š”์ฒญํ† ํฐ์„ ์š”์ฒญํ•œ๋‹ค.

  2. ์„œ๋น„์Šค ์ œ๊ณต์ž๊ฐ€ ์†Œ๋น„์ž์—๊ฒŒ ์š”์ฒญํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•ด์ค€๋‹ค.

  3. ์†Œ๋น„์ž๊ฐ€ ์‚ฌ์šฉ์ž๋ฅผ ์„œ๋น„์Šค์ œ๊ณต์ž๋กœ ์ด๋™์‹œํ‚จ๋‹ค. ์—ฌ๊ธฐ์„œ ์‚ฌ์šฉ์ž ์ธ์ฆ์ด ์ˆ˜ํ–‰๋œ๋‹ค.

  4. ์„œ๋น„์Šค ์ œ๊ณต์ž๊ฐ€ ์‚ฌ์šฉ์ž๋ฅผ ์†Œ๋น„์ž๋กœ ์ด๋™์‹œํ‚จ๋‹ค.

  5. ์†Œ๋น„์ž๊ฐ€ ์ ‘๊ทผํ† ํฐ์„ ์š”์ฒญํ•œ๋‹ค.

  6. ์„œ๋น„์Šค์ œ๊ณต์ž๊ฐ€ ์ ‘๊ทผํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•œ๋‹ค.

  7. ๋ฐœ๊ธ‰๋œ ์ ‘๊ทผํ† ํฐ์„ ์ด์šฉํ•ด์„œ ์†Œ๋น„์ž์—์„œ ์‚ฌ์šฉ์ž ์ •๋ณด์— ์ ‘๊ทผํ•œ๋‹ค.


์ตœ์ข… ์ˆ˜์ • : 12/17/2022, 7:23:59 AM