Wyświetlasz dokumentację Apigee Edge.
Przejdź do
dokumentacji Apigee X. info
Apigee Edge obejmuje funkcje OAuth 1.0a i OAuth 2 w postaci zestawu zasad. Zarządzanie cyklem życia tokenów i tajnych kluczy, w tym ich generowanie, weryfikacja i przechowywanie, odbywa się w Apigee Edge w imieniu usług backendowych.
W tym dokumencie opisujemy zmienne przepływu zdefiniowane przez zasady OAuth. Zmienne te można wykorzystać do wdrożenia niestandardowego zachowania w przypadku przepływów OAuth. Informacje o korzystaniu z OAuth znajdziesz w artykule OAuth.
Zmienne przepływu OAuth 2.0
Zmienne przepływu zdefiniowane w tej tabeli są wypełniane podczas wykonywania odpowiednich zasad OAuth są wykonywane, a tym samym są dostępne dla innych zasad lub aplikacji wykonywanych w przepływie proxy interfejsu API.
| Zasada weryfikacji tokena dostępu |
* Zmienne produktu API |
|
Przykładowa zasada: <OAuthV2 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> <Scope>space-separated-scopes</Scope>* <AccessToken>flow.variable</AccessToken>* <AccessTokenPrefix>Bearer</AccessTokenPrefix>* </OAuthV2> Obsługiwane są tylko tokeny typu bearer. Tokeny MAC nie są obsługiwane. Domyślnie token dostępu musi być przekazywany w nagłówku Authorization żądania HTTP. Na przykład:
Każda
Jeśli pola opcjonalne nie zostaną określone, wartości są wyodrębniane zgodnie ze specyfikacją OAuth 2.0 specyfikacji. |
| Zasada generowania kodu autoryzacji |
Zmienne ustawiane w przypadku powodzenia:
|
|
Przykładowa zasada: <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> * Opcjonalny Każda
Jeśli pola opcjonalne nie zostaną określone, wartości są wyodrębniane zgodnie ze specyfikacją OAuth 2.0 specyfikacji. Wartości atrybutów są uzyskiwane dynamicznie z określonej zmiennej przepływu lub statycznie przy użyciu wartości domyślnej w zasadzie. Jeśli określone są obie wartości, pierwszeństwo ma zmienna przepływu. |
| Zasada generowania tokena dostępu dla typów przyznawanych uprawnień: kod autoryzacji, dane logowania użytkownika i dane logowania klienta |
Zmienne ustawiane w przypadku powodzenia:
|
|
Przykładowa zasada: <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> * Opcjonalny Każda
Jeśli pola opcjonalne nie zostaną określone, wartości są wyodrębniane zgodnie ze specyfikacją OAuth 2.0 specyfikacji. Wartości atrybutów są uzyskiwane dynamicznie z określonej zmiennej przepływu lub statycznie przy użyciu wartości domyślnej w zasadzie. Jeśli określone są obie wartości, pierwszeństwo ma zmienna przepływu. |
| Zasada generowania tokena dostępu dla typu przyznawanych uprawnień: uprawnienia niejawne |
Zmienne ustawiane w przypadku powodzenia:
|
|
Przykładowa zasada: <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> * Opcjonalny Każda
Jeśli pola opcjonalne nie zostaną określone, wartości są wyodrębniane zgodnie ze specyfikacją OAuth 2.0 specyfikacji. Wartości atrybutów są uzyskiwane dynamicznie z określonej zmiennej przepływu lub statycznie przy użyciu wartości domyślnej w zasadzie. Jeśli określone są obie wartości, pierwszeństwo ma zmienna przepływu. |
| Zasada odświeżania tokena dostępu |
Zmienne ustawiane w przypadku powodzenia:
|
|
Przykładowa zasada: <OAuthV2 name="RefreshAccessToken"> <Operation>RefreshAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <GrantType>flow.variable</GrantType>* <RefreshToken>flow.variable</RefreshToken>* </OAuthV2> * Opcjonalny Każda
Jeśli pola opcjonalne nie zostaną określone, wartości są wyodrębniane zgodnie ze specyfikacją OAuth 2.0 specyfikacji. |
| Zasada pobierania atrybutów klienta |
|
Przykładowa zasada: <GetOAuthV2Info name="GetClientAttributes"> <ClientId ref="{variable_name}"/> </GetOAuthV2Info> Przykładowa zasada: <GetOAuthV2Info name="GetClientAttributes">
<ClientId>{client_id}</ClientId>
</GetOAuthV2Info> |
| Zasada pobierania atrybutów tokena dostępu |
Zmienne ustawiane w przypadku powodzenia:
|
|
Przykładowa zasada: <GetOAuthV2Info name="GetTokenAttributes"> <AccessToken ref="{variable_name}"/> </GetOAuthV2Info> Przykładowa zasada: <GetOAuthV2Info name="GetTokenAttributes">
<AccessToken>{access_token}</AccessToken>
</GetOAuthV2Info> |
| Zasada pobierania atrybutów kodu autoryzacji |
|
Przykładowa zasada: <GetOAuthV2Info name="GetAuthCodeAttributes"> <AuthorizationCode ref="{variable_name}"/> </GetOAuthV2Info> Przykładowa zasada: <GetOAuthV2Info name="GetAuthCodeAttributes">
<AuthorizationCode>{authorization_code}</AuthorizationCode>
</GetOAuthV2Info> |
| Zasada pobierania atrybutów tokena odświeżania |
|
Przykładowa zasada: <GetOAuthV2Info name="GetTokenAttributes"> <RefreshToken ref="{variable_name}"/> </GetOAuthV2Info> Przykładowa zasada: <GetOAuthV2Info name="GetTokenAttributes">
<RefreshToken>{refresh_token}</RefreshToken>
</GetOAuthV2Info> |
Zmienne przepływu OAuth 1.0a
Zmienne przepływu zdefiniowane w tej tabeli są wypełniane podczas wykonywania odpowiednich zasad OAuth są wykonywane, a tym samym są dostępne dla innych zasad lub aplikacji wykonywanych w przepływie proxy interfejsu API.
Zasada generowania tokena żądania
Przykładowa zasada:
<OAuthV1 name="GenerateRequestToken"> <Operation>GenerateRequestToken</Operation> </OAuthV1>
Zmienne ustawiane w przypadku powodzenia:
oauth_tokenoauth_token_secretoauth_callback_confirmedoauth_responseoauth_consumer_keyoauth_consumer_secret
Zasada generowania tokena dostępu
Przykładowa zasada:
<OAuthV1 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> </OAuthV1>
Zmienne ustawiane w przypadku powodzenia:
oauth_tokenoauth_token_secretoauth_responseoauth_consumer_keyoauth_consumer_secret
Zasada weryfikacji tokena dostępu
Przykładowa zasada:
<OAuthV1 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> </OAuthV1>
Zmienne ustawiane w przypadku powodzenia:
oauth_tokenoauth_token_secretoauth_responseoauth_consumer_keyoauth_consumer_secret
Zasada weryfikacji klucza interfejsu API
Przykładowa zasada:
<GetOAuthV1Info name="VerifyApiKey"> <OAuthConfig>{config_name}</OAuthConfig>* <APIKey ref="{variable_name}" /> </GetOAuthV1Info>
* Opcjonalny
Zmienne ustawiane w przypadku powodzenia:
oauth_consumer_keyoauth_consumer_secret
Zasada weryfikacji klienta
Przykładowa zasada:
<GetOAuthV1Info name="VerifyConsumer"> <OAuthConfig>{config_name}</OAuthConfig>* <ConsumerKey ref="{variable_name}" /> </GetOAuthV1Info>
* Opcjonalny
Zmienne ustawiane w przypadku powodzenia:
oauth_consumer_keyoauth_consumer_secret
Zasada weryfikacji tokena
Przykładowa zasada:
<GetOAuthV1Info name="VerifyToken"> <OAuthConfig>{config_name}</OAuthConfig>* <RequestToken ref="{variable_name}" /> </GetOAuthV1Info>
* Opcjonalny
Zmienne ustawiane w przypadku powodzenia:
oauth_tokenoauth_token_secret