OAuth (Open Authorization)이란?

고승우·2023년 6월 13일
0

OAuth란?

인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단. 이를테면 아마존, 구글, 페이스북, 마이크로소프트, 트위터가 있으며 사용자들이 타사 애플리케이션이나 웹사이트의 계정에 관한 정보를 공유할 수 있게 허용한다.

용어

  • user(사용자): 서비스 제공자와 소비자를 사용하는 계정을 가지고 있는 개인
  • consumer(소비자): Open API를 이용하여 개발된 OAuth를 사용하여 서비스 제공자에게 접근하는 웹사이트 또는 애플리케이션
  • service provider(서비스 제공자): OAuth를 통해 접근을 지원하는 웹 애플리케이션(Open API를 제공하는 서비스)
  • consumer secret(소비자 비밀번호) : 서비스 제공자에서 소비자가 자신임을 인증하기 위한 키
  • request token(요청 토큰) : 소비자가 사용자에게 접근권한을 인증받기 위해 필요한 정보가 담겨있으며 후에 접근 토큰으로 변환된다.
  • access token(접근 토큰) : 인증 후에 사용자가 서비스 제공자가 아닌 소비자를 통해서 보호된 자원에 접근하기 위한 키를 포함한 값.

인증방식

  1. consumer가 service provider에게 요청토큰을 요청한다.
  2. service provider가 consumer에게 요청토큰을 발급해준다.
  3. consumer가 user를 service provider로 이동시킨다. 여기서 사용자 인증이 수행된다.
  4. service provider가 사용자를 consumer로 이동시킨다.
  5. consumer가 access token을 요청한다.
  6. service provider가 access token을 발급한다.
  7. 발급된 access token을 이용하여 consumer에서 사용자 정보에 접근한다.

profile
٩( ᐛ )و 

0개의 댓글