<aside>
</aside>
๐ ์ฑํฐ ์๊ฐ
์๋
ํ์ธ์ ์ฌ๋ฌ๋ถ! ๐โโ๏ธ ์ง๋ ์๊ฐ ๋ค์ํ API ์ค๊ณ ๋ฐฉ์์ ๋ฐฐ์ ์ต๋๋ค. ์ด์ ์ฐ๋ฆฌ๊ฐ ๋ง๋ ๋ฉ์ง API๋ฅผ ์๋ฌด๋ ์ฌ์ฉํ๊ฒ ๋ ์ ์๊ฒ ์ฃ ? ์ง ํ๊ด๋ฌธ ๋์ด๋ฝ, ๋ฐฉ๋ฌธ๊ฐ ํ์ธ, ํน์ ๋ฐฉ ์ถ์
๊ท์น์ฒ๋ผ ๋ณด์์ด ํ์ํฉ๋๋ค! ๐
์ด๋ฒ ์๊ฐ์๋ ๋ณด์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋ ๊ธฐ๋ฅ, **์ธ์ฆ(Authentication)**๊ณผ **์ธ๊ฐ(Authorization)**๋ฅผ ๋ฐฐ์๋๋ค. ๋น์ทํด ๋ณด์ด์ง๋ง ์์ฃผ ๋ค๋ฅธ ์ค์ ๊ฐ๋
์
๋๋ค!
- ์ธ์ฆ (Authentication): "๋น์ , ์ ๋ง ๋๊ตฌ์ ๊ฐ์?" ์ ์ ํ์ธ (๋ฌธ ์ ์ ๋ถ์ฆ ๊ฒ์ฌ! ๐ง)
- ์ธ๊ฐ (Authorization): "์ ์ ํ์ธ ์๋ฃ... ๊ทธ๋์ ๋น์ ์ด ๋ญ ํ ์ ์์ฃ ?" ๊ถํ ํ์ธ (VIP์ธ์ง ์ผ๋ฐ ํ์์ธ์ง ํ์ธ! ๐)
์ฌ์ฉ์ ์์ ๋ก๊ทธ์ธ ๋ฐ ํ์ฉ ๋ฒ์ ๋ด ๊ธฐ๋ฅ ์ฌ์ฉ์ ์ํ ์ฒซ๊ฑธ์! ์ธ์ฆ๊ณผ ์ธ๊ฐ์ ์ธ๊ณ๋ก ํจ๊ป ๋ ๋๋ด
์๋ค! ์ค๋น๋์
จ๋์? ๋ณด์ ์คํฐ์ปค ๋ถ์ด๋ฌ ์ถ๋ฐ! ๐ก๏ธ
๐ฏ ์ฑํฐ ๋ชฉํ
- ์ธ์ฆ(Authentication)๊ณผ ์ธ๊ฐ(Authorization) ์ฐจ์ด์ ๋ช
ํํ ์ค๋ช
.
- ์ผ๋ฐ์ ์น ์๋น์ค ์ฌ์ฉ์ ๋ก๊ทธ์ธ ๊ณผ์ ์ดํด.
- ๋ก๊ทธ์ธ ์ํ ์ ์ง ๋ํ ๋ฐฉ์: ์ธ์
(Session) ๊ธฐ๋ฐ ์ธ์ฆ๊ณผ ํ ํฐ(Token) ๊ธฐ๋ฐ ์ธ์ฆ(ํนํ JWT) ๊ฐ๋
๋ฐ ์ฐจ์ด์ ์ค๋ช
.
- ๊ถํ(Role) ๋ฐ๋ฅธ ์ ๊ทผ ์ ์ด(Access Control) ๊ธฐ๋ณธ ๊ฐ๋
์ดํด.
- (๋ณด๋์ค!) OAuth 2.0 ํ์ฉ ์์
๋ก๊ทธ์ธ ๊ฐ๋
, MFA(๋ค์ค ์ธ์ฆ), ACL(์ ๊ทผ ์ ์ด ๋ชฉ๋ก) ๋ฑ ์ถ๊ฐ ๋ณด์ ๊ฐ๋
์๊ธฐ.
๐ ๊ฐ์ ๋ด์ฉ
1. ์ธ์ฆ (Authentication): ๋น์ ์ ๋๊ตฌ์ ๊ฐ์? (Identity Verification) ๐ค