[FE] oAuth : open authentication

gyulhana·2021년 11월 20일
0

oAuth란?

open authentication의 약자로 말 그대로 개방된 인증 시스템을 의미한다. 쉬운 예시를 들자면 보통 많은 서비스들의 페이스북, 트위터, 카카오, 구글 등의 소셜 로그인 서비스를 제공하는데 당연히 직접적으로 페이스북이나 구글에 저장된 비밀번호와 같은 DB에는 접근을 할 수는 없다. 그래서 이 때 인증 토큰을 송/수신해 접근 권한을 부여하고 사용할 수 있도록 하는 개방형 표준 프로토콜이다.

동작은 아래와 같은 방식으로 하게 된다.

동작 예시

최근에는 oAuth 2.0 버전을 대체적으로 사용하는 추세이며 1.0과는 개념 측면에서는 동일하나 몇몇 용어가 변화하였다. 용어는 아래를 참고하면 되겠다.

용어/개념

  • Resource Owner : 일반적으로 우리가 유저라고 지칭하는 구글과 같은 기타 서비스에 계정을 가지고 있으면서 새로운 서비스를 이용하려는 사용자
  • Client : 우리가 만드는 웹 서비스가 이에 해당
    서버에 유저 정보를 이용하도록 요청하는 입장
  • Authroization Server : OAuth 인증 서버
  • Access Token : Client가 User의 로그인(인증) 후 Authorization 서버로부터 전달받은 토큰
  • Resource Server : Access Token을 통해 접근 가능한 공개 API 서버

저장 방식

1) Session Storage 방식
2) Cookie 방식

예제

*추후 직접 사용해보고 추가하도록 하겠음.

*Ref.
oAuth by wiki
JWT VS oAuth by Twis
oAuth example by Jeong Amatuer

profile
친절한 하루를 선물하고 싶은 사람

0개의 댓글