<ph type="x-smartling-placeholder"></ph>
현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서. 정보
액세스 권한 및 갱신 토큰 취소
예를 들어 사용자가 OAuth 지원 앱에서 로그아웃할 때 토큰을 명시적으로 취소하거나 무효화해야 하는 경우가 있습니다. 토큰을 취소하면 만료되기 전에 언제든지 다시 승인을 받을 수 있습니다.
토큰 취소 절차는 OAuth 2.0 토큰 취소 사양에 의해 정의됩니다.
Apigee Edge는 InvalidateToken 작업을 통해 토큰 취소 엔드포인트를 생성합니다. 이 엔드포인트의 URI를 게시하면 앱 개발자가 Edge에서 발급한 토큰을 무효화합니다.
다음은 OAuthV2 정책 및 InvalidateToken 작업의 구성 예시입니다. 이 경우 액세스 토큰과 관련 갱신 토큰이 모두 취소됩니다. 기술적으로 cascade 플래그가 true로 설정되므로 둘 다 취소됩니다. cascade 플래그의 작동 방식에 관한 자세한 내용은 아래 토큰 요소의 속성 섹션을 참조하세요.
<OAuthV2 name="InvalidateToken"> <Operation>InvalidateToken</Operation> <Tokens> <Token type="accesstoken" cascade="true">flow.variable</Token> </Tokens> </OAuthV2>
<Tokens>/<Token> 요소
취소할 토큰을 지정하는 흐름 변수를 식별합니다. 예를 들어 개발자가 access_token
이라는 쿼리 매개변수를 사용하여 취소 요청을 제출할 경우 올바른 흐름 변수는 request.queryparam.access_token
입니다. 예를 들어 HTTP 헤더의 토큰을 요구하려면 이 값을 request.header.access_token
으로 설정합니다.
속성
-
type
(필수, 문자열): 지정된 변수로 식별된 토큰 유형입니다. 지원되는 값은accesstoken
및refreshtoken:
입니다.- 액세스 토큰을 취소하려면 accesstoken 유형을 지정합니다.
- 액세스 토큰과 갱신 토큰을 모두 취소하려면 refreshtoken 유형을 지정합니다.
새로고침 토큰 유형인 경우 Edge는 토큰이 갱신 토큰이라고 가정합니다. 갱신 토큰을 찾으면 취소됩니다. 갱신 토큰을 찾을 수 없는 경우 Edge는
액세스 토큰인지 확인합니다 액세스 토큰이 존재하는 경우 취소됩니다.
참고: 이미 무효화된 토큰을 InvalidateToken 정책에 전달하면 오류가 반환될 것으로 생각할 수도 있지만 정책은 오류를 반환하지 않습니다. 이러한 작업은 아무런 영향을 미치지 않습니다.
-
cascade
(선택사항, 부울, 기본값: true) 이 속성의 기본 용도는 연결된 액세스 토큰을 취소하지 않고 갱신 토큰을 취소하는 것입니다. 다음 사례를 참조하세요.- 갱신 토큰만 취소하고 관련 액세스 토큰은 취소하지 않습니다. 이렇게 하려면 <Token> 유형을
refreshtoken
으로 설정하고 cascade를false
로 설정합니다. - 액세스 토큰과 갱신 토큰을 모두 취소합니다. 이렇게 하려면 <Token> 유형을
accesstoken
으로 설정합니다. cascade의 값은true
(기본값) 또는false
가 될 수 있습니다. 이를true
로 설정하면 액세스 토큰과 갱신 토큰이 모두 취소됩니다. 이를false
로 설정하면 액세스 토큰이 취소되고 갱신 토큰을 사용할 수 없게 됩니다. 자세한 설명은 아래 참고 사항을 참조하세요. - 액세스 토큰을 취소하고 관련 갱신 토큰은 취소하지 않습니다. 이 작업은 지원되지 않습니다. 자세한 설명은 아래 참고 사항을 참조하세요.
- 갱신 토큰만 취소하고 관련 액세스 토큰은 취소하지 않습니다. 이렇게 하려면 <Token> 유형을
참고: 보안상의 이유로 액세스 토큰을 취소하면 관련 갱신 토큰도 함께 취소됩니다. 따라서 cascade 속성을 사용하여 액세스 토큰만 취소할 수는 없습니다. 예를 들어 <Token> 유형을 accesstoken
으로 설정하고 cascade=false
를 설정하면 액세스 토큰이 예상대로 취소되지만 관련 갱신 토큰은 사용할 수 없습니다. 취소된 액세스 토큰을 갱신하는 데 사용할 수 없습니다. cascade 속성의 기본 사용 사례는 갱신 토큰만 취소하려는 경우입니다. 이 경우 <Token> 유형을 refreshtoken
으로 설정하고 cascade=false
를 설정합니다. 갱신 토큰은 취소되지만 관련 액세스 토큰은 만료되거나 취소되기 전까지 유효합니다. 자세한 내용은 커뮤니티의 포럼 토론을 참조하세요.
액세스 권한 및 갱신 토큰 승인
ValidateToken 작업을 사용하여 취소된 토큰을 '다시 승인'합니다. 즉, 이 작업을 적용하면 대상 액세스 토큰 또는 갱신 토큰의 상태가 '취소됨'에서 '승인됨'으로 변경됩니다. 취소된 토큰이 아직 만료되지 않았다면 승인할 수 있습니다.
<OAuthV2 name="ValidateToken"> <Operation>ValidateToken</Operation> <Tokens> <Token type="refreshtoken" cascade="true">flow.variable</Token> </Tokens> </OAuthV2>
<Tokens>/<Token> 요소
승인할 토큰을 지정하는 흐름 변수를 식별합니다. 예를 들어 개발자가 access_token
이라는 쿼리 매개변수를 사용하여 승인 요청을 제출해야 할 경우 올바른 흐름 변수는 request.queryparam.access_token
입니다. 예를 들어 HTTP 헤더의 토큰을 요구하려면 이 값을 request.header.access_token
으로 설정합니다.
속성
type
(필수, 문자열) 지정된 변수로 식별된 토큰 유형입니다. 지원되는 값은accesstoken
및refreshtoken
입니다.cascade
(선택사항, 부울): 기본적으로 이 옵션은true
로 설정되며 승인이 관련 토큰에도 적용되도록 만듭니다. 따라서 갱신 토큰에 적용하면 연결된 액세스 토큰도 승인됩니다. 액세스 토큰에 적용한 경우 해당 갱신 토큰도 승인됩니다. 이를false
로 설정하면 지정된 액세스 토큰 또는 갱신 토큰만 승인됩니다.