Obtaining AuthorizationOAuth 2.0에서 권한을 얻는 다양한 방법Authorization Code GrantAuthorization Requestresponse_type="code"client_idredirect_uriscopestateAuthorization ResponsecodestateAccess Token Requestgrant_type="authorization_code"coderedirect_uriclient_idAccess Token Responseaccess_tokenexpires_intoken_typerefresh_token (optional)Implicit GrantJavaScript 같은 scripting language applicationredirection-..
Protocol EndpointsAuthorization server endpointsAuthorization endpointclient가 user-agent rediraction을 통해 resource owner로부터 권한을 얻는 데 사용Token endpointclient가 client authentication을 통해 authorization code를 access token으로 교환하는 데 사용Client endpointRedirection endpointauthorization server가 resource owner의 user-agent를 통해 client로 authorization credentials를 포함한 응답을 반환하는 데 사용Authorization Endpointresource o..
Client Registration클라이언트 등록 방식은 사양 밖클라이언트 등록 시 client와 authorization server 간의 직접적인 상호작용은 필요하지 않는다.클라이언트는 client type과 redirection URI를 지정해야 하고, authorization server는 애플리케이션 이름, 웹 사이트, 설명, 로고 이미지, 약관 등 추가적인 정보를 요구할 수 있다.Client Typesclient credentials의 기밀성을 유지할 수 있는지 여부에 따라 두 가지 클라이언트 유형이 있다.confidentiale.g. native application or web browser-based applicationpublice.g. web application on serverCl..
Introduction전통적인 client-server authentication model에서 third-party 애플리케이션이 restricted resource (protected resource)에 접근하기 위해서는 resource owner의 credentials를 알아야만 했다.이는 third-party 애플리케이션이 resource owner의 password를 저장하거나, 접근할 수 있는 resource의 scope을 제한할 수 없는 등 보안적으로 취약하다.OAuth는 authorization layer를 도입하고, 클라이언트의 역할을 resource owner의 역할과 분리하여 이러한 문제를 해결한다.클라이언트는 resource owner의 승인 하에 resource owner의 cre..
7년째 계정 서버 개발자로 있으면서, OAuth 2.0 스펙을 제대로 정독한 적 없는 듯 하다. (바쁜 현업에 치여서라고 변명해 본다.)물론 보편적인 내용은 현업 하면서 자연스럽게 알게 되기도 하지만, 왜 이런 설계가 나왔는지, 스펙에서 주로 쓰는 용어는 무엇인지, 문장과 문장 사이에 숨겨진 의도까지 파악하기 위해서는 스펙을 정독해야 한다.이에 Authorization의 가장 중요한 스펙 중 하나인 RFC 6749 The OAuth 2.0 Authorization Framework를 시간을 내 정리 해 보고자 한다. (OIDC, SAML, SCIM도...)https://datatracker.ietf.org/doc/html/rfc6749 RFC 6749: The OAuth 2.0 Authorization ..
- Total
- Today
- Yesterday