DeleteOAuthV2Info 정책

이 페이지는 ApigeeApigee Hybrid에 적용됩니다.

Apigee Edge 문서 보기

정책 아이콘

대상

지정된 OAuth V2 승인 코드 또는 액세스 토큰을 삭제합니다.

이 정책은 확장 가능한 정책이며, 이 정책을 사용하면 Apigee 라이선스에 따라 비용 또는 사용률이 영향을 받을 수 있습니다. 정책 유형 및 사용 영향에 대한 자세한 내용은 정책 유형을 참조하세요.

샘플

액세스 토큰 삭제

다음은 OAuth 2.0 액세스 토큰을 삭제하는 데 사용되는 정책 예시입니다. 아래 예시에서는 access_token이라는 헤더를 찾아 요청 메시지에서 삭제할 액세스 토큰을 찾습니다.

<DeleteOAuthV2Info name="DeleteAccessToken">
     <AccessToken ref="request.header.access_token"></AccessToken>
</DeleteOAuthV2Info>

승인 코드 삭제

다음은 OAuth 2.0 승인 코드를 삭제하는 데 사용되는 정책 예시입니다. 아래 예시에서는 code이라는 쿼리 매개변수를 찾아 요청 메시지에서 삭제할 인증 코드를 찾습니다.

<DeleteOAuthV2Info name="DeleteAuthCode">
     <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
</DeleteOAuthV2Info>

요소 참조

요소 참조는 DeleteOAuthV2Info 정책의 요소 및 속성을 설명합니다.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="DeleteOAuthV2Info-1">    
    <DisplayName>Delete OAuth v2.0 Info 1</DisplayName>
    <AccessToken ref={some-variable}></AccessToken>
    <!--<AuthorizationCode ref={some-variable}></AuthorizationCode>-->
    <Attributes/>
</DeleteOAuthV2Info

<DeleteOAuthV2Info> 속성

<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v20-Info-1">
속성 설명 기본값 Presence
async

요청/응답 흐름을 제공하는 풀과 상이한 스레드 풀에서 정책을 실행해야 하는 것으로 지정하려면 true로 설정합니다. 기본값은 false입니다.

이 설정은 내부 최적화에만 사용됩니다.

false 선택사항
continueOnError

대부분의 정책은 장애가 발생할 때 오류를 반환해야 합니다. 이 속성을 true로 설정하면 장애 시 흐름 실행이 계속됩니다.

false 선택사항
사용 설정됨 정책의 시행 여부를 결정합니다. false로 설정되면 정책이 '사용 중지'되어 시행되지 않습니다(정책이 흐름에 연결된 상태로 유지되더라도 마찬가지). true 선택사항
이름

정책의 내부 이름입니다. 이 이름은 정책을 흐름에 연결하기 위해 단계 요소에서 참조됩니다.

참고: 이름에 사용할 수 있는 문자는 A-Z0-9._\-$ %로 제한됩니다. 그러나 Apigee UI는 영숫자가 아닌 문자를 자동으로 삭제하는 등 추가 제한사항을 적용합니다.

해당 사항 없음 필수

<AccessToken> 요소

삭제할 액세스 토큰이 위치한 변수를 식별합니다. 예를 들어 액세스 토큰이 'access_token'이라는 쿼리 매개변수로 요청 메시지에 연결된 경우 request.queryparam.access_token을 지정합니다. 토큰을 참조하는 모든 유효한 변수를 사용할 수 있습니다. 또는 리터럴 토큰 문자열(드문 사례)을 전달할 수도 있습니다.

 <AccessToken ref="request.queryparam.access_token"></AccessToken>
기본값: 해당 사항 없음
Presence: <AccessToken> 또는 <AuthorizationCode>가 필요합니다.
유형: 문자열

속성

속성 설명 기본값 Presence
ref

액세스 토큰 변수입니다. 일반적으로 흐름 변수에서 가져옵니다. 예를 들면 request.header.token 또는 request.queryparam.token입니다.

해당 사항 없음 선택사항

<AuthorizationCode> 요소

삭제할 승인 코드가 위치한 변수를 식별합니다. 예를 들어 인증 코드가 'code'라는 쿼리 매개변수로 요청 메시지에 연결된 경우 request.queryparam.code를 지정합니다. 토큰을 참조하는 모든 유효한 변수를 사용할 수 있습니다. 또는 리터럴 토큰 문자열(드문 사례)을 전달할 수도 있습니다.

 <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
기본값: 해당 사항 없음
Presence: <AccessToken> 또는 <AuthorizationCode>가 필요합니다.
유형: 문자열

속성

속성 설명 기본값 Presence
ref

액세스 토큰 변수입니다. 일반적으로 흐름 변수에서 가져옵니다. 예를 들면 request.header.code 또는 request.queryparam.code입니다.

해당 사항 없음 선택사항

<DisplayName> 요소

Apigee UI 프록시 편집기에서 정책에 라벨을 지정하는 자연어 이름입니다. 생략하면 정책 이름 속성이 사용됩니다.

<DisplayName>DeleteOAuthV2Info 1</DisplayName>
기본값: 정책의 name 속성 값입니다.
Presence: 선택사항
유형: 문자열

오류 참조

이 섹션에서는 반환되는 오류 코드 및 오류 메시지와 이 정책이 오류를 트리거할 때 Apigee에서 설정한 오류 변수를 설명합니다. 오류를 처리하기 위해 오류 규칙을 개발 중인 경우, 이 정보는 중요합니다. 자세한 내용은 정책 오류에 대해 알아야 할 사항오류 처리를 참조하세요.

런타임 오류

이러한 오류는 정책이 실행될 때 발생할 수 있습니다.

오류 코드 HTTP 상태 원인
steps.oauth.v2.invalid_access_token 401 정책에 전송된 액세스 토큰이 잘못되었습니다.
steps.oauth.v2.invalid_request-authorization_code_invalid 401 정책에 전송된 승인 코드가 잘못되었습니다.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 이 오류의 문제 해결 방법에 대한 자세한 내용은 Oauth2.0 액세스 토큰 확인에서 'Invalid API call as no apiproduct match found' 오류 발생을 참조하세요.

배포 오류

배포 오류에 대한 자세한 내용은 UI에 보고된 메시지를 참조하세요.

오류 변수

이러한 변수는 이 정책이 런타임 시 오류를 트리거할 때 설정됩니다.

변수 장소
fault.name="fault_name" fault_name은 위의 런타임 오류 표에 나열된 오류 이름입니다. 오류 이름은 오류 코드의 마지막 부분입니다. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name은 오류를 발생시킨 정책의 사용자 지정 이름입니다. oauthV2.DeleteTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name은 오류를 발생시킨 정책의 사용자 지정 이름입니다. oauthV2.DeleteTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name은 오류를 발생시킨 정책의 사용자 지정 이름입니다. oauthV2.DeleteTokenInfo.cause = Invalid Access Token

오류 응답 예시

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

오류 규칙 예시

<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>

스키마

각 정책 유형은 XML 스키마(.xsd)로 정의됩니다. 참고로 GitHub에서 정책 스키마를 사용할 수 있습니다.

관련 주제