[10๋ถ„ ํ…Œ์ฝ”ํ†ก] ๐ŸŽกํ† ๋‹ˆ์˜ ์ธ์ฆ๊ณผ ์ธ๊ฐ€

KIM YONG GUยท2023๋…„ 10์›” 28์ผ
0

์šฐ์•„ํ•œํ…Œํฌ

๋ชฉ๋ก ๋ณด๊ธฐ
28/41

ํ•™์Šต ๋ชฉํ‘œ

์ธ์ฆ๊ณผ ์ธ๊ฐ€์— ๋Œ€ํ•œ ์ง€์‹ ์Šต๋“ ๋ฐ ๋ณต์Šต
ํ”„๋กœ์ ํŠธ์—์„œ ์„ ํƒํ•œ ์ธ์ฆ ๋ฐฉ์‹์— ๋Œ€ํ•œ ๊ทผ๊ฑฐ

์ธ์ฆ๊ณผ ์ธ๊ฐ€๋ž€?

์›น์—์„œ์˜ ์ธ์ฆ/์ธ๊ฐ€

์ธ์ฆ ์ดํ›„ ์ธ๊ฐ€.

์ธ์ฆ์˜ ๋ฐฉ๋ฒ•

0.์‚ฌ์ „ ์ง€์‹

์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ๋Š” HTTP๋ฅผ ํ†ตํ•ด ์†Œํ†ต

1. ์ธ์ฆํ•˜๊ธฐ (Request Header)

๋ธŒ๋ผ์šฐ์ €์—์„œ Base64 ์ธ์ฝ”๋”๋ฅผ ์ด์šฉํ•ด ์•”ํ˜ธ๋ฅผ ๋ณด์•ˆํ™”์‹œ์ผœ ์ „๋‹ฌ

๋ฌธ์ œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋งค๋ฒˆ ์ธ์ฆ(๋กœ๊ทธ์ธ)ํ•ด์•ผ ํ•œ๋‹ค.

2. ์ธ์ฆ ์œ ์ง€ํ•˜๊ธฐ (Browser)

๋ธŒ๋ผ์šฐ์ €์˜ ์ €์žฅ์†Œ๋ฅผ ์ด์šฉ (๋กœ์ปฌ, ์ฟ ํ‚ค, ์„ธ์…˜ ๋“ฑ)
๋ณธ๋ฌธ์—์„œ๋Š” ์ฟ ํ‚ค๋กœ ์„ค๋ช…

๊ทธ๋Ÿฌ๋‚˜ ์ด ๋ฐฉ๋ฒ•์€ ํ•ด์ปค์—๊ฒŒ ์ทจ์•ฝ.
๋ณดํ†ต ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„๋ณด๋‹ค ๋ณด์•ˆ ๋‹จ๊ณ„๊ฐ€ ๋‚ฎ์Œ.

3. ์•ˆ์ „ํ•˜๊ฒŒ ์ธ์ฆํ•˜๊ธฐ (Session)

์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์Œ.
์„ธ์…˜์˜ ๋งŒ๋ฃŒ๊ธฐ๊ฐ„์„ ์ •ํ•  ์ˆ˜ ์žˆ์Œ.
๊ทธ๋Ÿฌ๋‚˜ ๋ฌธ์ œ์ ์ด ์กด์žฌํ•จ

์„œ๋ฒ„๊ฐ€ ์—ฌ๋Ÿฌ๋Œ€์ผ๋•Œ ์‘๋‹ต์š”์ฒญ์ด ์ด์ „๊ณผ ๋‹ค๋ฅผ ๊ฒฝ์šฐ ์„ธ์…˜์ด ์œ ํšจํ•˜์ง€ ์•Š์Œ

์ด ๋•Œ ๋ณ„๋„์˜ ์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๋‘ฌ์„œ ํ•ด๊ฒฐ

๊ทธ๋Ÿฐ๋ฐ ๋˜ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Œ. ๋ฐ˜๋Œ€๋กœ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—ฌ๋Ÿฌ๋Œ€๋ผ๋ฉด?

์„œ๋ฒ„์— ๊ณผ๋ถ€ํ•˜๊ฐ€ ๊ฐˆ ์ˆ˜ ์žˆ์Œ.

Stateful vs Stateless

๋ฌด์ƒํƒœ์„ฑ๊ณผ ์ƒํƒœ์„ฑ์˜ ์ถฉ๋Œ.

์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์•„์ด๋””์–ด
์ •๋ณด์˜ ์š”์ฒญ๊ณผ ์‘๋‹ต ์•ˆ์— ์‚ฌ์šฉ์ž์˜ ์ธ๊ฐ€๋ฅผ ๋‹ด์•„๋ณด์ž => Token

4. ํšจ์œจ์ ์œผ๋กœ ์ธ์ฆํ•˜๊ธฐ (Token)

Json Web Token (JWT) - ๋””์ฝ”๋”ฉ์ด ์‰ฌ์›Œ ๋น„๋ฐ€๋ฒˆํ˜ธ ๋“ฑ์˜ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ๋‹ด์œผ๋ฉด ์•ˆ๋จ
์‹œํฌ๋ฆฟ ํ‚ค ์‚ฌ์šฉ

๊ทธ๋Ÿฌ๋‚˜ ๋‹จ์ ... ์•ก์„ธ์Šค ํ† ํฐ์ด ํƒˆ์ทจ๋‹นํ•˜๋ฉด ํ•ด์ปค๋Š” ์‚ฌ์šฉ์ž์™€ ๋™๋“ฑํ•œ ์ธ๊ฐ€๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค.

์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์œผ๋กœ ๋งŒ๋ฃŒ๊ธฐ๊ฐ„์„ ์ •ํ•จ. ๊ทธ๋Ÿฌ๋‚˜ ๋ถˆํŽธํ•จ์ด ์—ฌ์ „ํžˆ ์กด์žฌ
์ด๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„์— ๋‚˜์˜จ ๊ฒƒ์ด Refresh Token

5. ๋‹ค๋ฅธ ์ฑ„๋„์„ ํ†ตํ•ด ์ธ์ฆํ•˜๊ธฐ (OAuth)

์ƒ๋žต.

๋งˆ์น˜๋ฉฐ - ๋” ์•Œ์•„๋ณด๋ ค๋ฉด

profile
Engineer, Look Beyond the Code.

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