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’님의 포스트