๐Ÿ”ฅ TIL - Day 18

Kim Dae Hyunยท2021๋…„ 10์›” 3์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
20/93

๐Ÿ“Œ 2์ฐจ ํ”„๋กœ์ ํŠธ์— ์ธ์ฆ ์ถ”๊ฐ€ ์ค€๋น„

์ผ๋‹จ ์ผ๋ฐ˜์ ์ธ ID/PW ๋ฐฉ์‹ ๋กœ๊ทธ์ธ์€ ๋น„๊ต์  ๊ตฌํ˜„์ด ๊ฐ„๋‹จํ•˜๊ธฐ๋„ ํ•˜๊ณ  ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์†Œ์…œ ๋กœ๊ทธ์ธ๋งŒ ์ง€์›ํ•˜๊ธฐ๋กœ ํ–ˆ์œผ๋‹ˆ ๊ณผ๊ฐํžˆ ์Šคํ‚ตํ•œ๋‹ค.

์ผ๋‹จ ๋”ฐ๋ผํ•˜๋Š” ์ฝ”๋“œ๋Š” ์ž ์‹œ ๋ฏธ๋ค„๋‘๊ณ  Oauth2 ์„œ๋น„์Šค์— ๋Œ€ํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ ์•Œ์•„๋ดค๋‹ค.

์ผ๋‹จ Oauth2 ์„œ๋น„์Šค์˜ ๋ชฉ์ ์€ ์นด์นด์˜ค, ํŽ˜์ด์Šค๋ถ ๊ฐ™์€ ๋Œ€ํ˜• ์„œ๋น„์Šค์— ๋“ฑ๋ก๋œ ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๋กœ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ํ•ด๋‹น ๋Œ€ํ˜• ์„œ๋น„์Šค์— ์ €์žฅ๋œ ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ๋ฐ›์•„์˜ค๋Š” ๊ฒƒ์ด๋‹ค.

์กฐ๊ธˆ ๋” ์ž์„ธํžˆ ๋ณด์ž

  • ์‚ฌ์šฉ์ž๊ฐ€ ์นด์นด์˜ค๋กœ ๋กœ๊ทธ์ธ์„ ์š”์ฒญํ•œ๋‹ค๋ฉด ์šฐ๋ฆฌ๋Š” ์นด์นด์˜ค ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋ฅผ ๋ณด์—ฌ์ฃผ๊ณ  ์‚ฌ์šฉ์ž๋Š” ๋กœ๊ทธ์ธํ•œ๋‹ค.
  • ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธ(์ธ์ฆ)์— ์„ฑ๊ณตํ–ˆ๋‹ค๋ฉด ์šฐ๋ฆฌ๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋“ฑ๋ก์‹œ ์ง€์ •ํ•œ Redirect URI๋กœ ์ธ์ฆ์ฝ”๋“œ๋ฅผ ์‘๋‹ต ๋ฐ›๋Š”๋‹ค.
  • ์‘๋‹ต๋ฐ›์€ ์ธ์ฆ์ฝ”๋“œ๋กœ ์นด์นด์˜ค Oauth ์„œ๋ฒ„์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” Access Token์„ ์š”์ฒญํ•œ๋‹ค.
  • Access Token์„ ์‘๋‹ต๋ฐ›์•˜๋‹ค๋ฉด ์ด์ œ Access Token์œผ๋กœ ์นด์นด์˜ค Oauth ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ๋ฐ›์•„์˜ค๋Š” API๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค.

์ •๋ฆฌํ•˜์ž๋ฉด ์ด 3๋ฒˆ์˜ ์š”์ฒญ์ด ์™”๋‹ค๊ฐ”๋‹ค ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
1. ์‚ฌ์šฉ์ž๊ฐ€ ์นด์นด์˜ค์—์„œ ์ธ์ฆ ์ˆ˜ํ–‰ ๐Ÿ‘‰ ์ธ์ฆ์ฝ”๋“œ๋ฅผ ๋ฐ›๋Š”๋‹ค.
2. ์ธ์ฆ์ฝ”๋“œ๋กœ ์นด์นด์˜ค์— ์—‘์„ธ์Šค ํ† ํฐ ์š”์ฒญ ๐Ÿ‘‰ ์—‘์„ธ์Šค ํ† ํฐ์„ ๋ฐ›๋Š”๋‹ค.
3. ์—‘์„ธ์Šค ํ† ํฐ์œผ๋กœ Oauth ์„œ๋ฒ„์— ์‚ฌ์šฉ์ž ์ •๋ณด ์š”์ฒญ ๐Ÿ‘‰ ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ๋ฐ›๋Š”๋‹ค.

์นด์นด์˜ค๋ฅผ ๋น„๋กฏํ•ด์„œ ๋งŽ์€ ์„œ๋น„์Šค๋“ค์ด Oauth2 ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. API ์‘๋‹ต ํ˜•ํƒœ๋Š” ์กฐ๊ธˆ์”ฉ ๋‹ค๋ฅธ ๊ฒƒ ๊ฐ™์ง€๋งŒ ํ๋ฆ„์€ ๋ชจ๋‘ ๊ฐ™๋‹ค. ์ œ๋Œ€๋กœ ํ•œ ๋ฒˆ ๋จธ๋ฆฌ์— ์ƒˆ๊ธฐ์ž!

profile
์ข€ ๋” ์ฒœ์ฒœํžˆ ๊นŒ๋จน๊ธฐ ์œ„ํ•ด ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค. ๐Ÿง

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