본문 바로가기
Today I learned

[OAuth2] 기본개념 복습(용어정리)

by soheemon 2020. 6. 19.

 

역할

Resource Owner: 일반적인 유저. 

Resource Server: 보호된 데이터를 호스팅하는 서버. 네이버, 카카오.. 등 개인정보를 제공하는 서버

Client: Resource Server에 대한 액세스를 요청하는 프로그램 (Resource Owner가 가입하고자하는 사이트)

Authorization Server : Resource Server가 Client에게 Access Token을 발행한다. 이 토큰은 Client가 Resource 서버에 전송하는 Request에 포함된다. 

 

 

토큰

토큰은 권한부여서버에서 생성된 임의의 문자열이며 클라이언트가 Request를 전송할 때 발행된다.

- AccessToken : Client가 Resource Server로부터 Resource Owner의데이터를 요청할때 필요한 토큰.

Request헤더나, request Parameter로 Resource Server에 전송해야 한다. 권한부여서버에 의해 만료시간이 정해져 있다. 

- Refresh Token : AccessToken과 함께 발행되지만, Client의 모든 Request에 담기지는 않는다. AccessToken이 만료되었을때 갱신하기 위해서 권한부여서버로 전송된다.

 

액세스 토큰 범위

AccessToken의 권한을 제한하는데 사용되는 매개변수이다. Client는 Resource Owner의 데이터 중 사용할 범위를 Request에 담아서 권한부여 서버로 보내야 한다. 

 

OAuth2를 사용하여 ResourceServer에서 데이터를 검색하기

1) Resource Server의 Client로 등록하기

Client App 등록

- 응용프로그램 이름 :

- Redirect URL : 인증코드 및 AccessToken을 수신하기위한 Client의 URL

- Grant Type : Client가 사용할 Resource Owner가 가진 데이터의 범위

- Javascript Origin (option) : XMLHttpRequest를 통해 자원 서버를 요청할 수 있는 hostName (추측컨데, Redirect URL페이지로 보내는것이 아니라 비동기방식으로 인증코드랑 AccessToken을 보내는듯.)

 

Resource Server의 응답

Client id : 유일한 랜덤 문자열

Client Secret : 기밀로 유지해야 하는 비밀키

 

 

'Today I learned' 카테고리의 다른 글

[vue.js] 본격 생존코딩! 밥벌이를 해보자! (1)  (0) 2020.06.29
[OAuth2] 권한 부여 종류  (0) 2020.06.19
여러가지 연습 코드  (0) 2020.06.17
Real World HTTP  (0) 2020.06.15
[js]헷갈리는 문법 정리  (0) 2020.06.15

댓글