Django Hands-on experience 4-4) - Social Login Process

Turtleยท2023๋…„ 12์›” 26์ผ
0
post-thumbnail

๐Ÿ“Œ์†Œ์…œ๋กœ๊ทธ์ธ์˜ ๊ตฌ์กฐ

  • 3๊ฐœ์˜ ์ฃผ์ฒด: ๋ฐฑ์—”๋“œ ์„œ๋ฒ„, ์‚ฌ์šฉ์ž ํด๋ผ์ด์–ธํŠธ, ์ธ์ฆ ์ œ๊ณต์ž ์„œ๋ฒ„(SNS)
  • Oauth 2.0 ํ‘œ์ค€์œผ๋กœ ์ฃผ๋กœ ๊ตฌํ˜„๋˜๊ณ  ์‚ฌ์šฉ๋œ๋‹ค.
  • Naver์˜ ๊ฒฝ์šฐ API์— ๋Œ€ํ•œ ๊ฒ€์ฆ ๊ณผ์ •์— ์‹œ๊ฐ„์ด ์†Œ์š”๋˜์–ด ๊ตฌ๊ธ€๊ณผ ์นด์นด์˜ค ์†Œ์…œ ๋กœ๊ทธ์ธ๋งŒ ์ง„ํ–‰ํ•˜๋ ค๊ณ ํ•œ๋‹ค.

๐Ÿ“ŒOauth 2.0

โ‘ . ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ ๋˜๋Š” ์‚ฌ์ดํŠธ์— ์ ‘์†ํ•˜์—ฌ ์›ํ•˜๋Š” ์†Œ์…œ ๋„คํŠธ์›Œํฌ๋ฅผ ์„ ํƒํ•œ๋‹ค. ์ด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์†Œ์…œ ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ์ด๋‚˜ ์†Œ์…œ ํ”Œ๋žซํผ ๋กœ๊ทธ์ธ ๋งํฌ ํ˜•ํƒœ๋กœ ํ‘œ์‹œ๋œ๋‹ค.

โ‘ก. ์†Œ์…œ ๋„คํŠธ์›Œํฌ ๊ณต๊ธ‰์—…์ฒด๊ฐ€ ๋กœ๊ทธ์ธ ์š”์ฒญ์„ ์ˆ˜์‹ ํ•˜๊ณ  ์‚ฌ์šฉ์ž๋ฅผ ์ธ์ฆํ•œ๋‹ค. ์ด ๋•Œ, ์‚ฌ์šฉ์ž๋Š” ์•ฑ ๋˜๋Š” ์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ์ˆ˜๋ฝํ•ด์•ผ ํ•œ๋‹ค.

โ‘ข. ์†Œ์…œ ๊ณต๊ธ‰์—…์ฒด๊ฐ€ ์•„์ด๋ดํ‹ฐํ‹ฐ๋ฅผ ํ™•์ธํ•˜๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์ดํŠธ ๋˜๋Š” ์•ฑ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋‹ค.

โ†’ ์†Œ์…œ ๋กœ๊ทธ์ธ์€ ๋ช‡ ๊ฐ€์ง€ ํ•ต์‹ฌ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์ด์šฉํ•œ๋‹ค. OAuth2.0์€ ์‹ ๋ขฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์†Œ์…œ ๋„คํŠธ์›Œํฌ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ๊ทธ์ธ ์šฉ๋„๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ์•ฑ์— ๋ถ€์—ฌํ•œ๋‹ค. OpenID Connect๋Š” ํƒ€์‚ฌ ๋กœ๊ทธ์ธ์„ ์ง€์›ํ•˜๋Š” ์ธ์ฆ ํ”„๋กœํ† ์ฝœ๋กœ์„œ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ์›น ์‚ฌ์ดํŠธ์˜ ๋กœ๊ทธ์ธ ์ž๊ฒฉ ์ฆ๋ช…์„ ์‚ฌ์šฉํ•ด ์•ฑ ๋ฐ ๊ณ„์ • ์„œ๋น„์Šค์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค. ์†Œ์…œ ๋กœ๊ทธ์ธ์€ ์ด๋Ÿฌํ•œ ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๋ฐ”ํƒ•์œผ๋กœ ๊ตฌํ˜„๋œ๋‹ค.

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