๐Ÿ”‘ OAuth๋ฅผ 5์‚ด ์•„์ด์—๊ฒŒ ์„ค๋ช…ํ•˜๋“ฏ์ด

๋ฐœํ–‰: (2026๋…„ 1์›” 1์ผ ์˜ค์ „ 07:23 GMT+9)
3 ๋ถ„ ์†Œ์š”
์›๋ฌธ: Dev.to

Source: Dev.to

Valet Key Analogy

๊ณ ๊ธ‰ ๋ ˆ์Šคํ† ๋ž‘์— ๊ฐ€์„œ ์ฃผ์ฐจ๋ฅผ ์ง์ ‘ ์ฐพ๊ณ  ์‹ถ์ง€ ์•Š์„ ๋•Œ,
๋ฐœ๋ ˆ ํŒŒํ‚น ์ง์›์—๊ฒŒ ์ฐจ ์—ด์‡ ๋ฅผ ๊ฑด๋„ค์ง€๋งŒ ํŠธ๋ ํฌ๋ฅผ ์—ด๊ฑฐ๋‚˜ ์„ ๊ธ€๋ผ์Šค๋ฅผ ํ›”์น ๊นŒ ๊ฑฑ์ •๋ฉ๋‹ˆ๋‹ค.

ํ•ด๊ฒฐ์ฑ…: ๋ฐœ๋ ˆ ํ‚ค โ€“ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ˆ˜ ํ‚ค:

  • โœ… ์ฐจ ์‹œ๋™์„ ๊ฑธ ์ˆ˜ ์žˆ์Œ
  • โœ… ์งง์€ ๊ฑฐ๋ฆฌ๋งŒ ์ด๋™ ๊ฐ€๋Šฅ
  • โŒ ํŠธ๋ ํฌ๋ฅผ ์—ด ์ˆ˜ ์—†์Œ
  • โŒ ๊ธ€๋Ÿฌ๋ธŒ ๋ฐ•์Šค๋ฅผ ์—ด ์ˆ˜ ์—†์Œ

OAuth๋„ ์›น์‚ฌ์ดํŠธ์—์„œ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์™œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๊ณต์œ ํ•˜๋ฉด ์•ˆ ๋ ๊นŒ?

์ž˜๋ชป๋œ ๋ฐฉ๋ฒ•: ์•ฑ์— ํŠธ์œ„ํ„ฐ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์•Œ๋ ค์คŒ.

  • ์•ฑ์ด ๋ชจ๋“  DM์„ ์ฝ์„ ์ˆ˜ ์žˆ์Œ.
  • ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Œ.
  • ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์‹ ํ•ด ๋ฌด์—‡์ด๋“  ํ•  ์ˆ˜ ์žˆ์Œ.

์˜ฌ๋ฐ”๋ฅธ ๋ฐฉ๋ฒ•: OAuth ์‚ฌ์šฉ.

  1. ์•ฑ์ด ํŠธ์œ„ํ„ฐ์— ์ œํ•œ๋œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์š”์ฒญ.
  2. ํŠธ์œ„ํ„ฐ๊ฐ€ ๋‹น์‹ ์—๊ฒŒ โ€œ์ด ์•ฑ์ด ๋‹น์‹ ์„ ๋Œ€์‹ ํ•ด ๊ฒŒ์‹œํ•˜๋„๋ก ํ—ˆ์šฉํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?โ€ ๋ผ๊ณ  ๋ฌผ์Œ.
  3. ๋‹น์‹ ์ด ์˜ˆ๋ผ๊ณ  ๋‹ตํ•จ.
  4. ํŠธ์œ„ํ„ฐ๊ฐ€ ํ—ˆ์šฉ๋œ ๊ถŒํ•œ ๋‚ด์—์„œ๋งŒ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ˆ˜ ํ† ํฐ์„ ๋ฐ˜ํ™˜.
  5. ์•ฑ์€ ํ† ํฐ์„ ์‚ฌ์šฉํ•ด ๊ฒŒ์‹œํ•˜๊ณ , ๋น„๋ฐ€๋ฒˆํ˜ธ๋Š” ์ „ํ˜€ ์•Œ ์ˆ˜ ์—†์Œ.

OAuth Flow (Simplified)

App โ†’ Twitter: "I need to post for this user"
Twitter โ†’ User: "Do you allow this?"
User โ†’ Twitter: "Yes, allow posting"
Twitter โ†’ App: "Hereโ€™s a limited token"
App โ†’ Twitter: (uses token to post)

Key Takeaways

  • OAuth๋Š” ์•ฑ์ด ์ œํ•œ๋œ ๊ถŒํ•œ์œผ๋กœ ๋‹น์‹ ์˜ ๊ณ„์ •์— ์ ‘๊ทผํ•˜๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋…ธ์ถœํ•˜์ง€ ์•Š๊ณ  **์ธ์ฆ(authorization)**์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • โ€œContinue with Googleโ€์€ ์ข…์ข… OpenID Connect๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ์ด๋Š” OAuth ์œ„์— ๊ตฌ์ถ•๋œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.
Back to Blog

๊ด€๋ จ ๊ธ€

๋” ๋ณด๊ธฐ ยป

JavaScript์—์„œ ๋น„๋™๊ธฐ

๐Ÿ”ด ๋™๊ธฐ์‹ ์ผ๋ฐ˜์ ์œผ๋กœ ํ•˜๋‚˜์˜ ์ž‘์—…์ด ๋๋‚œ ๋’ค์—์•ผ ๋‹ค์Œ ์ž‘์—…์ด ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. javascript console.log'One'; console.log'Two'; console.log'Three'; ๐Ÿ‘‰ ์ถœ๋ ฅ One Two...

HTML tags์™€ ์‚ฌ์šฉ๋ฒ• ๋ฐ ๊ธฐ๋ณธ HTML tags

HTML ํƒœ๊ทธ๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”? HTML ํƒœ๊ทธ๋Š” ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์ฝ˜ํ…์ธ ๋ฅผ ์–ด๋–ป๊ฒŒ ํ‘œ์‹œํ•˜๊ฑฐ๋‚˜ ์ฒ˜๋ฆฌํ• ์ง€ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ํƒœ๊ทธ ๊ตฌ์กฐ: html. ํƒœ๊ทธ ์‚ฌ์šฉ์€? HTML ํƒœ๊ทธ๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ตฌ์กฐํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.