스프링 시큐리티 OAuth2/OAuth 2.0 용어 이해

OAuth 2.0 Roles 이해

webmaster 2023. 1. 4. 00:59
728x90

Resource Owner (자원 소유자)

  • 보호된 자원에 대한 접근 권한을 부여할 수 있는 주체, 사용자로서 계정의 일부에 대한 접근 권한을 부여하는 사람
  • 사용자를 대신하여 작동하려는 모든 클라이언트는 먼저 사용자의 허가를 받아야 한다

Resource Server (보호자원서버)

  • 타사 애플리케이션에서 접근하는 사용자의 자원이 포함된 서버를 의미한다
  • 액세스 토큰을 수락 및 검증할 수 있어야 하며 권한 체계에 따라 요청을 승인할 수 있어야 한다.

Authorization Server  (인가서버)

  • 클라이언트가 사용자 계정에 대한 동의 및 접근을 요청할 때 상호 작용하는 서버로서 클라이언트의 권한 부여 요청을 승인하거나 거부하는 서버
  • 사용자가 클라이언트에게 권한 부여 요청을 승인한 후 access token 을 클라이언트에게 부여하는 역할

Client (클라이언트)

  • 사용자를 대신하여 권한을 부여받아 사용자의 리소스에 접근하려는 애플리케이션
  • 사용자를 권한 부여 서버로 안내하거나 사용자의 상호 작용 없이 권한 부여 서버로부터 직접 권한을 얻을 수 있다

OAuth 2.0 Roles

OAuth 2.0 Roles

  • 자원 소유자 / 클라이언트 :  권한 부여 요청 및 승인
  • 클라이언트 / 인가 서버 : access token 요청 및 발행
  • 클라이언트 / 보호자원서버 : access token을 가지고 리소스 요청
    • access token을 인증하는 방법은 인증 서버에 물어보는 방식이 있고, 보호자원서버 자체에서 인증을 해주는 방법이 있다.

TEST

1) GET 방식으로 인증 서버로 부터 사용자 인증

해당 정보를 Browser에서 입력

  • 로그인을 성공적으로 완료하면, redirect_uri에서 입력한 곳으로 이동한다.
  • code값을 후에 토큰을 발행하기 위해서는 기억해야 한다.

2) 인증된 사용자로부터 토큰 발급하기

인증이 완료된 사용자로 부터 code 값을 얻어온다.
EndPoint 조회

 

token 발급 endpoint 확인
발급받은 코드와 client 정보를 통해 토큰을 발급 받을 수 있다

3) 발급된 토큰으로 인증서버로 부터 유저 정보 받아오기

EndPoint 조회
UserEndPoint를 복사
직전에 전달받은 토큰과 endPoint로 유저 정보 조회 가능

728x90

'스프링 시큐리티 OAuth2 > OAuth 2.0 용어 이해' 카테고리의 다른 글

Oauth 2.0 Token Types 이해  (0) 2023.01.06
OAuth 2.0 Client Types 이해  (0) 2023.01.04
keycloak 설치 및 설정  (0) 2023.01.02
OAuth 2.0 소개  (0) 2023.01.02