ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [OAuth2.0] OAuth 2.0 용어 정리
    IT 발자취.../웹 개발 2019. 12. 17. 23:39

    1. Role

    OAuth defines four roles ( 용어를 정의한다 )

    resource owner

    ( a.k.a the User )

    보호된 자원에 대한 접근 권한을 부여할 수 있는 엔티티

    리소스 오너가 개인인 경우, 이를 최종 사용자라고 한다.

    resource server

    ( a.k.a the API server )

    액세스 토큰을 사용하여 보호 자원 요청을 수락하고 응답 할 수 있는 보호 자원을 호스팅하는 서버

    client

    resource owner를 대신하여 권한을 부여하여 보호된 리소스 요청을 하는 응용 프로그램

    "Client"라는 용어는 특정 구현 특성 ( 예> 응용 프로그램이 서버, 데스크톱 또는 기타 장치에서 실행되는지 여부)를 의미하지 않는다.

    authorization server resource owner를 성공적으로 인증하고 권한을 얻은 후 서버가 클라이언트에 액세스 토큰을 발행

    authorization server와 resource server 간의 상호작용은 이 명세의 범위를 벗어난다.

    authorization server는 resource server와 같이 있을 수도 있고, 별도로 구축될 수 있다.

    단일 authorization server는 여러 resource server가 승인한 액세스 토큰을 발행 할 수 있다.

     

    프로토콜 흐름

    https://tools.ietf.org/html/rfc6749

    추상적인 프로토콜 흐름도

    ( A ) 클라이언트는 Resource owner로 부터 authorization ( 인가 / 권한 부여 )를 요청한다. authorization 요청은 resource owner에게 직접적으로 요청하거나, 바람직하게는 중개자로서 인증 서버를 통해 간접적으로 이루어 질 수 있다.

     

    ( B )  Client는 이 스펙에 정의된 네 가지 권한 중 하나를 사용하거나 확장 권한 타입을 사용하여 표시되는 Resource owner의 권한을 나타내는 자격증명서인 권한 부여 권한을 받습니다.

    권한 부여 유형은 client가 권한 부여를 요청하는데 사용하는 방법 및 authorization server가 지원하는 유형에 따라 다르다.

     

    ( C ) Client는 authorization server로 인증하고, 권한 부여를 제시하여 access token을 요청한다.

    ( D ) Authorization server는 클라이언트를 인증하고 권한 부여를 검토하고, 유효하면 access token을 발행한다.

    ( E ) Client는 리소스 서버에서 보호된 리소스를 요청하고 액세스 토큰을 제시하여 인증한다.

    ( F ) Resource Server는 access token을 검증하고, 유효하면 요청을 제공한다.

     

     

     

    2. Token

    https://tools.ietf.org/html/rfc6749

    Access Token

    Access tokens are credentials used to access protected resources.

    -> 액세스 토큰은 보호된 리소스에 접근하는데 사용되는 자격 증명이다.

    액세스 토큰은 클라이언트에 발행된 권한을 나타내는 문자열이다.

    토큰은 resource owner가 부여하고 resource server와 authorization server가 시행하는 특정 권한 범위 및 엑세스 기간을 나타낸다.

    Refresh Token

    Refresh Token은 Access Token을 얻는데 사용되는 자격 증명이다.

    Refresh Token은 authorization server에 의해 client에 발행되며 현재 액세스 토큰이 유효하지 않거나 만료 될 때, 새 액세스 토큰을 얻거나 범위가 동일하거나 적은 추가 액세스 토큰을 얻는데 사용된다.

     

    참고 자료 : https://oauth.net/2/

     

    OAuth 2.0 — OAuth

    OAuth 2.0 OAuth 2.0 is the industry-standard protocol for authorization. OAuth 2.0 focuses on client developer simplicity while providing specific authorization flows for web applications, desktop applications, mobile phones, and living room devices. This

    oauth.net

     

    댓글

Designed by Gintire