Skip to content

Latest commit

ย 

History

History
19 lines (15 loc) ยท 1.67 KB

File metadata and controls

19 lines (15 loc) ยท 1.67 KB

OAuth2 ๊ณผ์ •

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

์‚ฌ์šฉ์ž๊ฐ€ ์„œ๋น„์Šค์—๊ฒŒ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์œ„์ž„ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์ธ์ฆ์€ ์‹œ์Šคํ…œ ์ ‘๊ทผ์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ (๋กœ๊ทธ์ธ) -> ์ธ์ฆ๋งŒ ํ•˜๋Š” ๊ฒƒ์€ openID
  • ๊ถŒํ•œ์€ ํ–‰์œ„์˜ ๊ถŒ๋ฆฌ๋ฅผ ๊ฒ€์ฆํ•˜๋Š” ๊ฒƒ

  1. ์‚ฌ์šฉ์ž๋Š” ์šฐ๋ฆฌ์„œ๋น„์Šค์— oauth๋กœ ์ด์šฉํ•˜๊ธฐ๋กœ ํ•˜๊ณ  ์ ‘๊ทผ์„ ํ•˜๋ฉด ์šฐ๋ฆฌ ์„œ๋น„์Šค๋Š” client id, clientSecret, redirect url์„ ํ•จ๊ป˜ ๋กœ๊ทธ์ธ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค.
  2. Authorization sever๋Š” ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋ฅผ ์ œ๊ณตํ•œ๋‹ค. (์‚ฌ์šฉ์ž ์ธ์ฆ)
  3. ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ์„ ํ•˜๋ฉด ์ž„์‹œ์ฝ”๋“œ์ธ Authorization code(๋งŒ๋ฃŒ์‹œ๊ฐ„์ด ์žˆ์Œ)๋ฅผ ์šฐ๋ฆฌ์„œ๋น„์Šค๊ฐ€ ๋ณด๋‚ธ redirect uri ์™€ ๋“ฑ๋ก๋œ redirect url๊ฐ€ ๋™์ผํ•œ์ง€ ํ™•์ธํ•˜๊ณ  ํ•ด๋‹น url๋กœ redirect ํ•œ๋‹ค.
  4. ์šฐ๋ฆฌ ์„œ๋น„์Šค๋Š” ๋ฐ›์€ ์ฝ”๋“œ๋ฅผ ์ด์šฉํ•ด AccessToken์„ ์š”์ฒญํ•˜๊ณ  ๋ฐœ๊ธ‰๋ฐ›์œผ๋ฉด ์ด์ œ ์„œ๋น„์Šค๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ์ ‘๊ทผ๊ถŒํ•œ์„ ์œ„์ž„๋ฐ›์€ ๊ฒƒ์ด๋‹ค. (Authorization code๋กœ client ์ธ์ฆ)

OAuth ์ทจ์•ฝ์ 

ํ”ผ์‹ฑ์‚ฌ์ดํŠธ๋ฅผ ์ด์šฉํ•ด ์—ฌ๋Ÿฌ๊ฐœ ์—ฐ๋™์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์— ๊ณต๊ฒฉ์ž์˜ ๊ณ„์ •์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋‹ค. Authorization ๊ฐ’์„ ๊ณต๊ฒฉ์ž์˜ ๊ฐ’์œผ๋กœ ๋ฐ”๊ฟ”์น˜ํ‚ค ํ•œ๋‹ค๋ฉด ํ”ผํ•ด์ž๊ฐ€ ๊ฐ€์ž…ํ•œ ๊ณ„์ •์€ ๊ณต๊ฒฉ์ž์˜ ๊ณ„์ •์œผ๋กœ ๊ฐ€์ž…์ด ๋  ๊ฒƒ์ด๋‹ค. ์ฐธ๊ณ