Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Apigee Edge инкапсулирует возможности OAuth 1.0a и OAuth 2 в набор политик. Управление жизненным циклом токенов и секретов, включая генерацию, проверку и хранение, осуществляется Apigee Edge от имени ваших бэкэнд-сервисов.
В этом документе определены переменные потока, заданные политиками OAuth. Эти переменные можно использовать для реализации пользовательского поведения для потоков OAuth. Инструкции по использованию OAuth см. в разделе OAuth .
Переменные потока OAuth 2.0
Переменные потока, определенные в этой таблице, заполняются при выполнении соответствующих политик OAuth и, следовательно, становятся доступны другим политикам или приложениям, работающим в потоке прокси-сервера API.
| Проверка политики токенов доступа |
* Переменные продукта API |
Пример политики: <OAuthV2 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> <Scope>space-separated-scopes</Scope>* <AccessToken>flow.variable</AccessToken>* <AccessTokenPrefix>Bearer</AccessTokenPrefix>* </OAuthV2> Поддерживаются только токены носителя (bearer tokens). MAC-токены не поддерживаются. По умолчанию токен доступа должен передаваться в заголовке HTTP-запроса Authorization. Например: Любая
Если необязательные поля не указаны, значения извлекаются в соответствии со спецификацией OAuth 2.0. |
| Сгенерировать политику авторизационных кодов |
Переменные, устанавливаемые в зависимости от успеха:
|
Пример политики: <OAuthV2 name="GetAuthCode"> <Operation>GenerateAuthorizationCode</Operation> <ExpiresIn>1000<ExpiresIn> <ResponseType>flow.variable</ResponseType>* <ClientId>flow.variable</ClientId>* <RedirectUri>flow.variable</RedirectUri>* <Scope>flow.variable</Scope>* <State>flow.variable</State>* <Attributes>* <Attribute name=”1” ref=”flow.variable”>value1</Attribute> <Attribute name=”2” ref=”flow.variable”>value2</Attribute> </Attributes> </OAuthV2> * Необязательный Любая
Если необязательные поля не указаны, значения извлекаются в соответствии со спецификацией OAuth 2.0. Значения атрибутов определяются динамически на основе указанной переменной потока или статически с использованием значения по умолчанию, заданного в политике. Если указаны оба параметра, приоритет имеет переменная потока. |
| Сгенерируйте политику токенов доступа для типов предоставления доступа: код авторизации, учетные данные пользователя и учетные данные клиента. |
Переменные, устанавливаемые в зависимости от успеха:
|
Пример политики: <OAuthV2 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <SupportedGrantTypes>* <GrantType>authorization_code</GrantType> <GrantType>password</GrantType> <GrantType>client_credentials</GrantType> </SupportedGrantTypes> <GrantType>flow.variable</GrantType>* <ClientId>flow.variable</ClientId>* <RedirectUri>flow.variable</RedirectUri>* <Scope>flow.variable</Scope>* <AppEndUser>flow.variable</AppEndUser>* <Code>flow.variable</Code>* <UserName>flow.variable</UserName>* <PassWord>flow.variable</PassWord>* <Attributes>* <Attribute name=”1” ref=”flow.variable”>value1</Attribute> <Attribute name=”2” ref=”flow.variable”>value2</Attribute> </Attributes> </OAuthV2> * Необязательный Любая
Если необязательные поля не указаны, значения извлекаются в соответствии со спецификацией OAuth 2.0. Значения атрибутов определяются динамически на основе указанной переменной потока или статически с использованием значения по умолчанию, заданного в политике. Если указаны оба параметра, приоритет имеет переменная потока. |
| Сгенерировать политику токенов доступа для типа неявного предоставления доступа. |
Переменные, устанавливаемые в зависимости от успеха:
|
Пример политики: <OAuthV2 name="GenerateAccessToken"> <Operation>GenerateAccessTokenImplicitGrant</Operation> <ExpiresIn>1000<ExpiresIn> <ResponseType>flow.variable></ResponseType>* <ClientId>flow.variable></ClientId>* <RedirectUri>flow.variable></RedirectUri>* <Scope>flow.variable></Scope>* <State>flow.variable></State>* <AppEndUser>flow.variable</AppEndUser>* <Attributes>* <Attribute name=”1” ref=”flow.variable”>value1</Attribute> <Attribute name=”2” ref=”flow.variable”>value2</Attribute> </Attributes> </OAuthV2> * Необязательный Любая
Если необязательные поля не указаны, значения извлекаются в соответствии со спецификацией OAuth 2.0. Значения атрибутов определяются динамически на основе указанной переменной потока или статически с использованием значения по умолчанию, заданного в политике. Если указаны оба параметра, приоритет имеет переменная потока. |
| Обновить политику использования токенов доступа |
Переменные, устанавливаемые в зависимости от успеха:
|
Пример политики: <OAuthV2 name="RefreshAccessToken"> <Operation>RefreshAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <GrantType>flow.variable</GrantType>* <RefreshToken>flow.variable</RefreshToken>* </OAuthV2> * Необязательный Любая
Если необязательные поля не указаны, значения извлекаются в соответствии со спецификацией OAuth 2.0. |
| Получение политики атрибутов клиента |
Пример политики: <GetOAuthV2Info name="GetClientAttributes"> <ClientId ref="{variable_name}"/> </GetOAuthV2Info> Пример политики: <GetOAuthV2Info name="GetClientAttributes">
<ClientId>{client_id}</ClientId>
</GetOAuthV2Info> |
| Получить политику атрибутов токена доступа |
Переменные, устанавливаемые в зависимости от успеха:
|
Пример политики: <GetOAuthV2Info name="GetTokenAttributes"> <AccessToken ref="{variable_name}"/> </GetOAuthV2Info> Пример политики: <GetOAuthV2Info name="GetTokenAttributes">
<AccessToken>{access_token}</AccessToken>
</GetOAuthV2Info> |
| Получить политику атрибутов кода авторизации |
Пример политики: <GetOAuthV2Info name="GetAuthCodeAttributes"> <AuthorizationCode ref="{variable_name}"/> </GetOAuthV2Info> Пример политики: <GetOAuthV2Info name="GetAuthCodeAttributes">
<AuthorizationCode>{authorization_code}</AuthorizationCode>
</GetOAuthV2Info> |
| Получить политику атрибутов токена обновления |
Пример политики: <GetOAuthV2Info name="GetTokenAttributes"> <RefreshToken ref="{variable_name}"/> </GetOAuthV2Info> Пример политики: <GetOAuthV2Info name="GetTokenAttributes">
<RefreshToken>{refresh_token}</RefreshToken>
</GetOAuthV2Info> |
Переменные потока OAuth 1.0a
Переменные потока, определенные в этой таблице, заполняются при выполнении соответствующих политик OAuth и, следовательно, становятся доступны другим политикам или приложениям, работающим в потоке прокси-сервера API.
Формирование политики токенов запроса
Пример политики:
<OAuthV1 name="GenerateRequestToken"> <Operation>GenerateRequestToken</Operation> </OAuthV1>
Переменные, устанавливаемые в зависимости от успеха:
-
oauth_token -
oauth_token_secret -
oauth_callback_confirmed -
oauth_response -
oauth_consumer_key -
oauth_consumer_secret
Сгенерировать политику токенов доступа
Пример политики:
<OAuthV1 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> </OAuthV1>
Переменные, устанавливаемые в зависимости от успеха:
-
oauth_token -
oauth_token_secret -
oauth_response -
oauth_consumer_key -
oauth_consumer_secret
политика проверки токенов доступа
Пример политики:
<OAuthV1 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> </OAuthV1>
Переменные, устанавливаемые в зависимости от успеха:
-
oauth_token -
oauth_token_secret -
oauth_response -
oauth_consumer_key -
oauth_consumer_secret
Проверка политики ключей API
Пример политики:
<GetOAuthV1Info name="VerifyApiKey"> <OAuthConfig>{config_name}</OAuthConfig>* <APIKey ref="{variable_name}" /> </GetOAuthV1Info>
* Необязательный
Переменные, устанавливаемые в зависимости от успеха:
-
oauth_consumer_key -
oauth_consumer_secret
Проверьте политику защиты прав потребителей.
Пример политики:
<GetOAuthV1Info name="VerifyConsumer"> <OAuthConfig>{config_name}</OAuthConfig>* <ConsumerKey ref="{variable_name}" /> </GetOAuthV1Info>
* Необязательный
Переменные, устанавливаемые в зависимости от успеха:
-
oauth_consumer_key -
oauth_consumer_secret
Проверка политики токенов
Пример политики:
<GetOAuthV1Info name="VerifyToken"> <OAuthConfig>{config_name}</OAuthConfig>* <RequestToken ref="{variable_name}" /> </GetOAuthV1Info>
* Необязательный
Переменные, устанавливаемые в зависимости от успеха:
-
oauth_token -
oauth_token_secret