Oauth 2.0 에 대해서 공부를 하다가 용어에 대한 명확한 이해가 필요해서 정리를 했다.
Access Token : 보호된 리소스에 일정 기간동안 접근할 수 있는 권한을 가진 문자열
- Scope : Token 소유자가 접근할수 있는 보호된 리소스 셋
Client : Resource를 이용하려고 하는 Web 이나 App.
Resource Sever : 실제 정보를 가지고 있는 대상.
Resource Owner : Resource 에 대한 소유자.
Access Token 을 얻는 절차는 아래처럼 설명할 수 있다.
Resource Owner |
Client |
Resource Server |
1. Client 에게 정보 요청 |
|
|
|
2. Resource Server 에 있는 Resource Owner의 정보를 접근 할수 있는 권한 요청 |
|
3. Resource Server 에 로그인 (Client 에서 Resource 서버에 로그인할수 있는 페이지를 바로 연결해줌) |
|
|
4. Resource Server에 있는 Resource Owner의 특정 정보에 Client가 접근하는것을 허용하는지 여부 확인 (Yes/No) |
|
|
|
|
5. Resource Owner 가 Client의 접근을 허용할 경우 Client 에게 Code를 보냄 |
6. Code를 받아서 Client_id, secret를 code와 함께 Resource Server로 보냄 | ||
7. Client가 보낸 client_id, secret, code를 확인한 후 access tockent을 발급 | ||
8. 발급받은 access token으로 Resource Server 에 있는 owner 의 정보에 접근. |
위 표에서 설명한 것은 Access Token을 얻는 방법중 한가지에 대해서 설명한 것이다. 꼭 이것과 동일하지 않을 수 있다. 그렇지만 저런 한가지 흐름을 알아 두면 다른것을 이해하기에 도움이 될거라 생각이 된다.
'Development > Java' 카테고리의 다른 글
[Spring Boot]Rest API 호출을 위한 Client Code (0) | 2017.09.14 |
---|---|
[Spring Boot]Oauth server 적용해보기 (0) | 2017.09.04 |
[Spring Security]간단 Spring Security (0) | 2017.06.27 |
[Spring]Controller Test 하기 (0) | 2017.06.12 |
[Spring]Jasypt 를 이용한 properties 암호화 (6) | 2017.04.25 |