OAuth에 대해 알아보자!

2017. 2. 23. 14:43업무 관련/개발 노트

반응형

출처 : https://ko.wikipedia.org/wiki/OAuth

OAuth는 제각각인 인증방식을 표준화한 인증방식
OAuth를 이용하면 이 인증을 공유하는 애플리케이션끼리는 별도의 인증이 필요없다. 
따라서 여러 애플리케이션을 통합하여 사용하는 것이 가능하게 된다.

용어

OAuth에 관련된 용어들을 간략히 설명한다.

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

아래처럼 용어가 1.0과 2.0과는 다르다.




인증방식

OAuth인증은 소비자와 서비스 제공자 사이에서 일어나는데 이 인증 과정은 다음과 같다.

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




반응형

'업무 관련 > 개발 노트' 카테고리의 다른 글

아키텍트 역할을 위한 지식 쌓기  (0) 2018.09.11
JsonLint - Json validator 소개  (0) 2017.06.02
Step 01. Research  (0) 2016.03.06
2014.11.20 - 개발노트  (0) 2014.11.20
mom 프로젝트 시작! ㅋㅋ  (0) 2014.11.17