Вы просматриваете документацию 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.