Search

Resource Owner의 승인

Created
2021/01/15 14:03
작성자
Resource Owner가 Client에 접속을할 때,
페이스북에 글을 올린다던가, 구글 캘린더에 일정을 등록하는 것처럼 해당 서비스의 전체 기능이 아닌 일부 기능을 사용한다.
Client는 A, B, C, D 모든 기능이 필요한게 아니라 B와 C의 기능만 필요하다면 모든 기능에 대한 인증을 받을게 아니라 B, C에 대해서만 인증을 받는게 맞다.
해당 Resource Server의 기능을 활용하고자 한다면 아래의 facebook, twiter, google의 로그인 버튼을 이용하여 Resource Server에 인증절차를 거친다.
우리는 아래의 버튼을 처리할 때, client_id, scope, redirect_uri 정보를 함께 보낸다.
여기서 scope는 우리가 사용하고자하는 기능인 B와 C일 것이다.
만약 google 로그인 버튼을 눌렀다면, 아래와 같은 로그인 정보를 입력하는 페이지가 나타난다.
로그인을 정상적으로 완료한다면 아래와 같은 기능 제공에 대한 허용을 묻는 창이 나타난다.
Resource Owner가 해당 기능들의 사용을 허용한다면 Resource Server는 요청한 Client_id가 있는지 확인하고 요청이 들어온 redirectURL이 등록된 것과 같은지 비교를 한 뒤에 다음과 같이 user id와 scope를 등록한다.
이 과정이 Resource Owner가 다른 서비스의 기능을 활용하기 위한 승인 작업이다.