신입 게임 개발자의 프로그래밍 일기
OAuth란? 본문
그냥 인터넷으로 "OAuth가 뭘까?"라는 의문점을 가지고 정보들을 찾은 것들을 정리(짜집기?)한 것입니다.
OAuth란?
-OAuth는 인증을 위한 Open Standard Protocol의 약자로, 사용자 인증 방식의 표준이다.
OAuth가 있기 전에는?
-OAuth가 사용되기 전에는 인증방식의 표준이 없었기 때문에 기존의 기본인증인 ID/Password를 사용하였는데, 이는 보안상 취약한 구조를 가지고 있었다.
(ID, Password는 해당 사용자의 모든 권한을 얻는 것이므로 도용의 위험성이 있다.)
-기본 인증이 아닌 경우에는 각 애플리케이션들이 각자의 개발한 회사의 방법대로 사용자를 확인하였다.
기초용어
-서비스 제공자(Service Provider): OAuth를 통해 접근을 지원하는 웹 애플리케이션(Open API를 제공하는 Service)
-소비자(Consumer): 서비스 제공자가 제공하는 OAuth인증 관련 Open API를 활용하여 서비스 제공자에게 접근하는 프로그램
-사용자(User): 서비스 제공자에 계정을 가지고 있는 자
-요청 토큰(Request Token): 소비자가 사용자에게 접근권한을 인증받기 위해 필요한 정보(ex. 기본인증)가 담겨있으며 후에 접근 토큰으로 변환
-접근 토큰(Access Token): 요청 토큰의 인증 후에 사용자가 서비스 제공자가 아닌 소비자를 통해서 보호된 자원에 접근하기 위한 키를 포함한 값
회사 방문 과정과 OAuth인증 방식 비교
회사 방문 과정 | OAuth 인증 과정 | |
1 | 외부인A가 안내 데스크에 게임 퍼블리싱 목적으로 관계자B를 만나러 왔다고 말한다. | 요청 토큰의 요청과 발급 |
2 | 안내 데스크에서는 관계자B에게 외부인A가 방문했다고 연락한다. | 사용자 인증 페이지 호출 |
3 | 관계자B가 안내 데스크로 찾아와 외부인A의 신원을 확인해 준다. | 사용자 로그인 완료 |
4 | 관계자B는 외부인 A의 목적과 인적 사항을 안내 데스크에 기록한다. | 사용자의 권한 요청 및 수락 |
5 | 안내 데스크는 외부인A에게 방문증을 발급해 준다. | 접근 토큰 발급 |
6 | 관계자B와 외부인A는 정해진 장소로 이동해 업무를 진행한다. | 접근 토큰을 이용해 서비스 정보 요청 |
참고사이트
1) 위키: https://ko.wikipedia.org/wiki/OAuth
2) 씨앤토토 Tip&Tech게시판 글: http://www.cnthoth.com/_html/sub5_2_2.html?idx=34
'IT' 카테고리의 다른 글
[읽을거리]Hiberfil.sys, Pagefile.sys & the New Swapfile.sys file in Windows 10/8 (0) | 2017.12.07 |
---|