본문 바로가기
oauth

Oauth 2.0 소개

by byeongoo 2020. 10. 26.

안녕하세요 오늘은 Oauth 2.0에 대해서 학습한 내용에 대해서 정리하도록 하겠습니다. 토이 프로젝트 진행 시 실제 서비스를 하려면 소셜 로그인 기능은 필수라 Oauth 2.0에 대해서 한번 정리를 하려고 합니다. 

 

1. Oauth 2.0 소개

Oauth2.0(Open Authentication 2)이란 웹이나 모바일 애플리케이션 다른 회사의 API를 사용하기 위해서 권한 획득을 위한 프로토콜 입니다. 즉, 인증을 위한 오픈 스탠다드 프로토콜 입니다. Oauth 2.0은 1.0과 호환되지 않지만 인증 절차가 간략합니다.

 

Oauth를 이용하면 로그인 및 각종 API를 편하고 안전하게 사용할 수 있습니다. 구글, 카카오, 페이스북에서 제공하는 인증 서버를 통해 회원 정보를 인증하고 Access Token을 발급 받습니다. 그리고 이 Access Token을 이용하여 타사의 API 서비스를 이용할 수 있습니다.

2. Oauth 2.0 관련 용어

Resource owner(자원 소유자) Resource server(구글, 페이스북, 카카오 등)의 계정을 소유하고 있는 사용자를 의미합니다.
Client 구글, 페이스북, 카카오 등의 API 서비스를 이용하는 제 3의 서비스
Authorization Server(권한 서버) 권한을 관리해 주는 서버, Access Token, Refresh Token을 발급, 재발급 해주는 역할을 합니다.
Resource Server OAuth2 서비스를 제공하고, 자원을 관리하는 서버입니다.
Access Token Authorization Server로 부터 발급 받은 인증 토큰. Resource Server에 전달하여 서비스를 제공 받을 수 있습니다.

3. Oauth 2.0 인증 과정

아래 이미지는 대표적으로 많이 사용하는 Autorization Code Grant 방식의 예입니다. 

4. 마무리

위의 과정을 통해서 Client는 Resource Server의 특정 정보에 대한 접근 권한을 얻게 됩니다. 간편 로그인 및 타사의 API를 사용하는 경우 위의 과정에 대해서 이해하고 사용하면 큰 도움이 될 것 입니다.

REFERENCE

bamdule.tistory.com/62

baked-corn.tistory.com/29

real-dongsoo7.tistory.com/113