⚡ 생각대로 살지 않으면 사는대로 생각한다.
⚡ 나는 어차피 잘 될 놈이다. 이미 잘 되고 있고, 계속해서 잘 되고 있다.
Resource Owner
: Resource 사용자Client
: 사용자를 대신해 보호된 Resource에 액세스하는 애플리케이션Authorization Server
: Client가 Resource Server에 접근할 수 있는 권한을 부여하는 서버Resource Server
: Client의 요청을 수락하고 Resource Owner에게 해당하는 Resource를 제공하는 서버Authorization Code 방식 흐름
- Resource Owner는 소셜 로그인 버튼을 누르는 등의 서비스 요청을 Client(애플리케이션)에게 전송
- Client는 Authorization Server에 Authorization Code를 요청.
이 때 미리 생성한 Client ID, Redirect URI, 응답 타입을 함께 전송.- Resource Owner는 로그인 페이지를 통해 로그인을 진행.
- 로그인이 확인되면 Authorization Server는 Authorization Code를 Client에게 전달. (이 전에 요청과 함께 전달한 Redirect URI로 Code를 전달합니다.)
- Client는 전달받은 Authorization Code를 이용해 Access Token 발급을 요청.
AccessToken을 요청할 때 미리 생성한 Client Secret, Redirect URI, 권한 부여 방식, Authorization Code를 함께 전송.- 요청 정보를 확인한 후 Redirect URI로 Access Token을 발급.
- Client는 발급받은 Access Token을 이용해 Resource Server에 Resource를 요청합니다.
- Access Token을 확인한 후 요청 받은 Resource를 Client에게 전달
Implicit Grant Type 방식 흐름
- Resource Owner는 소셜 로그인 버튼을 누르는 등의 서비스 요청을 Client(애플리케이션)에게 전송.
- Client는 Authorization Server에게 접근 권한을 요청.
- 요청과 함께 미리 생성한 Client ID, Redirect URI, 응답타입을 전송한다. (⭐ Authroization Code를 획득하기 위한 요청이 아닙니다)
- Resource Owner는 로그인 페이지를 통해 로그인을 진행.
- 로그인이 확인되면 Authorization Server는 Client에게 Access Token을 전달.
- Client는 Access Token을 이용해 Resource Server에게 Resource를 요청.
- Access Token을 확인한 후 요청 받은 Resource를 전달.
위의 Authorization Grant 유형과 다르게 Authorization Code 요청/전달을 생략.
Resource Owner Password Credential Grant 방식 흐름
- Resource Owner는 로그인 버튼을 누르는 등의 서비스 요청을 Client(애플리케이션)에게 전송.
- 이 때 로그인에 필요한 정보(Username, Password)를 이용해 요청.
- Client에서는 Resource Owner에게서 전달받은 로그인 정보를 통해 Authorization Server에 Access Token을 요청한다.
- 미리 생성한 Client ID, 권한 부여 방식, 로그인 정보를 함께 전달.
- 요청과 함께 온 정보들을 확인한 후 Client에게 Access Token을 전달.
- Client는 Access Token을 이용하여 Resource Server에게 Resource를 요청.
- Access Token을 확인한 후 요청 받은 Resource를 전달합니다.
Client Credentials Grant 방식 흐름
- Client가 Authorization Server로 Access Token을 요청
- Authorization Server는 Client에게 Access Token을 전달.
- Client는 Access Token을 이용해 Resource Server에게 Resource를 요청.
- Access Token을 확인한 후 요청 받은 Resource를 전달.
※ 인증 처리 흐름에서 Resource Owner를 제외 하고 생각!!!
-끝-