Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Что
Удаляет указанный код авторизации 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">
Атрибут | Описание | По умолчанию | Присутствие |
---|---|---|---|
асинхронный | Установите значение Этот параметр используется только для внутренней оптимизации. | ЛОЖЬ | Необязательный |
продолжитьOnError | Ожидается, что большинство политик вернут ошибку при возникновении сбоя. Если для этого атрибута установлено | ЛОЖЬ | Необязательный |
включено | Определяет, применяется ли политика или нет. Если установлено значение false , политика «отключается» и не применяется (даже если политика остается прикрепленной к потоку). | истинный | Необязательный |
имя | Внутреннее имя политики. Это имя используется в элементах Step для присоединения политики к потоку. Примечание. В имени можно использовать следующие символы: | Н/Д | Необходимый |
Элемент <AccessToken>
Идентифицирует переменную, в которой находится удаляемый токен доступа. Например, если токен доступа прикреплен к сообщению запроса в качестве параметра запроса с именем «access_token», укажите request.queryparam.access_token
. Вы можете использовать любую допустимую переменную, ссылающуюся на токен. Или можно передать буквальную строку токена (редкий случай).
<AccessToken ref="request.queryparam.access_token"></AccessToken>
По умолчанию: | Н/Д |
Присутствие: | Требуется либо <AccessToken> , либо <AuthorizationCode> . |
Тип: | Нить |
Атрибуты
Атрибут | Описание | По умолчанию | Присутствие |
---|---|---|---|
ссылка | Переменная токена доступа. Обычно извлекается из переменной потока. Например: | Н/Д | Необязательный |
Элемент <AuthorizationCode>
Идентифицирует переменную, в которой находится код авторизации, который нужно удалить. Например, если код аутентификации прикреплен к сообщению запроса в качестве параметра запроса с именем «код», укажите request.queryparam.code
. Вы можете использовать любую допустимую переменную, ссылающуюся на токен. Или можно передать буквальную строку токена (редкий случай).
<AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
По умолчанию: | Н/Д |
Присутствие: | Требуется либо <AccessToken> , либо <AuthorizationCode> . |
Тип: | Нить |
Атрибуты
Атрибут | Описание | По умолчанию | Присутствие |
---|---|---|---|
ссылка | Переменная токена доступа. Обычно извлекается из переменной потока. Например: | Н/Д | Необязательный |
Элемент <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.