OpenID Connect; OIDC
๊ธฐํ ์๋ฆฌ์ฆ: Web Authentication
- Cookie & Session & JWT
- OAuth
- OpenID Connect(OIDC) ๐
- SSO
- SAML
์ด ๊ธ์ OpenID Connect๋ฅผ ๊ณต๋ถํ๋ฉด์ ๊ฐ์ธ์ ์ผ๋ก ์ ๋ฆฌํ ๊ธ์ ๋๋ค. ์ง์ ๊ณผ ์กฐ์ธ์ ์ธ์ ๋ ํ์์ ๋๋ค ใ ใ
<OpenID Connect; OIDC>๋ OAuth 2.0์ ํ์ฅํด์ ๊ฐ๋ฐ ๋์๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ OAuth์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ฌ์ฉ์ ์ธ์ฆ์ ๋ค๋ฅธ ์๋น์ค์ ์์ํ๋ ์ธ์ฆ ๋ฐฉ์์์ ์ฌ์ฉ๋๋ ํ๋กํ ์ฝ์ด๋ผ๊ณ ํ ์ ์๋ค.
OIDC๋ ๊ธฐ๋ณธ์ ์ผ๋ก OAuth ํ๋กํ ์ฝ์ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ ํ๋กํ ์ฝ์ด๋ค. ๊ทธ๋์ ๊ธฐ์ ์ ์ผ๋ก๋ ๋งค์ฐ ์ ์ฌํ๋ค๊ณ ๋ณผ ์ ์๋ค. ๊ทธ๋ฌ๋ OIDC์ OAuth๋ ์ฌ์ฉํ๋ ๋ชฉ์ ์์ ์ฐจ์ด๊ฐ ์๋ค.
OAuth | OIDC |
---|---|
์ธ๊ฐ(Authorization)์ ์ํด ์ฌ์ฉ | ์ธ์ฆ(Authentication)์ ์ํด ์ฌ์ฉ |
Resource Server์ ์ ์ฅ๋ ์ฌ์ฉ์ ๋ฐ์ดํฐ์ ์ ๊ทผ | ์ฌ์ฉ์๊ฐ ๋๊ตฌ์ธ์ง ํ์ธํ๊ธฐ ์ํด ์ฌ์ฉ |
๋ค๋ฅธ ํ๋ซํผ์ API๋ฅผ ํธ์ถํ๊ธฐ ์ํด access_token ์ ํ๋ณด |
์ฌ์ฉ์ ๊ฐ์ธ์ ์๋ณํ๋ id_token ์ ํ๋ณด |
์ด๋, OIDC์์ ์ป๋ id_token
์ ๋ณดํต JWT ๋ฐฉ์์ผ๋ก ์ธ์ฝ๋ฉ ๋์ด ์๋ค.
์ข๋ ์์ธํ ๋ด์ฉ์ ์ค์ตํ์ ๋ณด์ถฉํ๋๋ก ํ๊ฒ ๋ค!
SAML vs. OAuth vs. OIDC
Image from here
์ฐธ๊ณ ์๋ฃ
- โํดํผ๋โ๋์ ํฌ์คํธ
- โDale Seoโ๋์ ํฌ์คํธ
- ๊ตฌ๊ธ OAuth & OIDC๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ์ํ๋ค ๐
- โEthan Ayerโ๋์ ํฌ์คํธ