Политика DeleteOAuthV2Info

Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee
X.info

Что

Удаляет указанный код авторизации OAuth V2 или токен доступа.

Образцы

Удалить токен доступа

Ниже приведен пример политики, используемой для удаления токена доступа 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">
Атрибут Описание По умолчанию Присутствие
асинхронный

Установите значение true , чтобы указать, что политика должна выполняться в пуле потоков, отличном от пула, обслуживающего поток запроса/ответа. Значение по умолчанию — false .

Этот параметр используется только для внутренней оптимизации.

ЛОЖЬ Необязательный
continueOnError

В большинстве случаев политики предполагают возврат ошибки при возникновении сбоя. Установив этот атрибут в true , выполнение потока продолжится даже при сбое.

ЛОЖЬ Необязательный
включено Определяет, применяется ли политика или нет. Если установлено значение false , политика «отключается» и не применяется (даже если политика остается привязанной к потоку). истинный Необязательный
имя

Внутреннее имя политики. Это имя используется в элементах Step для прикрепления политики к потоку.

Примечание: В имени можно использовать только следующие символы: A-Z0-9._\-$ % . Пользовательский интерфейс управления применяет дополнительные ограничения, например, автоматически удаляет символы, не являющиеся буквенно-цифровыми.

Н/Д Необходимый

элемент <AccessToken>

Указывает переменную, в которой находится токен доступа для удаления. Например, если токен доступа прикреплен к сообщению запроса в качестве параметра запроса с именем "access_token", укажите request.queryparam.access_token . Вы можете использовать любую допустимую переменную, которая ссылается на токен. Или же можно передать строку с самим токеном (редкий случай).

 <AccessToken ref="request.queryparam.access_token"></AccessToken>
По умолчанию: Н/Д
Присутствие: Требуется либо <AccessToken> , либо <AuthorizationCode> .
Тип: Нить

Атрибуты

Атрибут Описание По умолчанию Присутствие
ссылка

Переменная, содержащая токен доступа. Обычно извлекается из переменной потока. Например: request.header.token или request.queryparam.token .

Н/Д Необязательный

элемент <AuthorizationCode>

Указывает переменную, в которой находится код авторизации для удаления. Например, если код авторизации прикреплен к сообщению запроса в качестве параметра запроса с именем "code", укажите request.queryparam.code . Вы можете использовать любую допустимую переменную, которая ссылается на токен. Или же можно передать строку токена в буквальном смысле (редкий случай).

 <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
По умолчанию: Н/Д
Присутствие: Требуется либо <AccessToken> , либо <AuthorizationCode> .
Тип: Нить

Атрибуты

Атрибут Описание По умолчанию Присутствие
ссылка

Переменная, содержащая токен доступа. Обычно извлекается из переменной потока. Например: request.header.code или request.queryparam.code .

Н/Д Необязательный

<DisplayName> элемент

Имя на естественном языке, которое используется для обозначения политики в редакторе прокси-сервера пользовательского интерфейса управления. Если оно опущено, используется атрибут имени политики.

<DisplayName>DeleteOAuthV2Info 1</DisplayName>
По умолчанию: Значение атрибута name полиса.
Присутствие: Необязательный
Тип: Нить

Ссылка на ошибку

В этом разделе описаны коды ошибок и сообщения об ошибках, которые возвращаются, а также переменные ошибок, которые устанавливаются Edge, когда эта политика вызывает ошибку. Эту информацию важно знать, если вы разрабатываете правила обработки ошибок. Дополнительные сведения см. в разделах Что нужно знать об ошибках политики и Обработка ошибок .

Ошибки выполнения

Эти ошибки могут возникнуть при выполнении политики.

Код неисправности Статус HTTP Причина
steps.oauth.v2.invalid_access_token 401 Токен доступа, отправленный в политику, недействителен.
steps.oauth.v2.invalid_request-authorization_code_invalid 401 Код авторизации, отправленный в политику, недействителен.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 Пожалуйста, прочтите этот пост сообщества Apigee для получения информации об устранении этой ошибки.

Ошибки развертывания

Обратитесь к сообщению, отображаемому в пользовательском интерфейсе, для получения информации об ошибках развертывания.

Переменные неисправности

Эти переменные устанавливаются, когда эта политика вызывает ошибку во время выполнения.

Переменные Где Пример
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.

Связанные темы