Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi
Apigee X. info
Apigee Edge merangkum kemampuan OAuth 1.0a dan OAuth 2 dalam serangkaian kebijakan. Pengelolaan siklus proses token dan secret, termasuk pembuatan, validasi, dan penyimpanan, dikelola oleh Apigee Edge atas nama layanan backend Anda.
Dokumen ini menentukan variabel alur yang ditentukan oleh kebijakan OAuth. Variabel dapat digunakan untuk menerapkan perilaku kustom untuk alur OAuth. Untuk penggunaan OAuth, lihat OAuth.
Variabel alur OAuth 2.0
Variabel alur yang ditentukan dalam tabel ini diisi saat kebijakan OAuth masing-masing dijalankan, sehingga tersedia untuk kebijakan atau aplikasi lain yang dijalankan dalam alur proxy API.
| Memverifikasi kebijakan token akses |
* Variabel produk API |
|
Contoh kebijakan: <OAuthV2 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> <Scope>space-separated-scopes</Scope>* <AccessToken>flow.variable</AccessToken>* <AccessTokenPrefix>Bearer</AccessTokenPrefix>* </OAuthV2> Hanya token pembawa yang didukung. Token MAC tidak didukung. Secara default, token akses harus diteruskan di header permintaan HTTP Authorization. Contoh:
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai dengan spesifikasi OAuth 2.0. |
| Kebijakan pembuatan kode otorisasi |
Variabel yang ditetapkan saat berhasil:
|
|
Contoh kebijakan: <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> * Opsional
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai dengan spesifikasi OAuth 2.0. Nilai atribut diturunkan secara dinamis dari flow variable yang ditentukan, atau secara statis menggunakan nilai default dalam kebijakan. Jika keduanya ditentukan, flow variable akan diprioritaskan. |
| Membuat kebijakan token akses untuk jenis pemberian kode otorisasi, kredensial pengguna, dan kredensial klien |
Variabel yang ditetapkan saat berhasil:
|
|
Contoh kebijakan: <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> * Opsional
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai dengan spesifikasi OAuth 2.0. Nilai atribut diturunkan secara dinamis dari flow variable yang ditentukan, atau secara statis menggunakan nilai default dalam kebijakan. Jika keduanya ditentukan, flow variable akan diprioritaskan. |
| Membuat kebijakan token akses untuk jenis pemberian izin Implisit |
Variabel yang ditetapkan saat berhasil:
|
|
Contoh kebijakan: <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> * Opsional
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai dengan spesifikasi OAuth 2.0. Nilai atribut diturunkan secara dinamis dari flow variable yang ditentukan, atau secara statis menggunakan nilai default dalam kebijakan. Jika keduanya ditentukan, flow variable akan diprioritaskan. |
| Kebijakan token akses muat ulang |
Variabel yang ditetapkan saat berhasil:
|
|
Contoh kebijakan: <OAuthV2 name="RefreshAccessToken"> <Operation>RefreshAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <GrantType>flow.variable</GrantType>* <RefreshToken>flow.variable</RefreshToken>* </OAuthV2> * Opsional
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai dengan spesifikasi OAuth 2.0. |
| Kebijakan mendapatkan atribut klien |
|
Contoh kebijakan: <GetOAuthV2Info name="GetClientAttributes"> <ClientId ref="{variable_name}"/> </GetOAuthV2Info> Contoh kebijakan: <GetOAuthV2Info name="GetClientAttributes">
<ClientId>{client_id}</ClientId>
</GetOAuthV2Info> |
| Mendapatkan kebijakan atribut token akses |
Variabel yang ditetapkan saat berhasil:
|
|
Contoh kebijakan: <GetOAuthV2Info name="GetTokenAttributes"> <AccessToken ref="{variable_name}"/> </GetOAuthV2Info> Contoh kebijakan: <GetOAuthV2Info name="GetTokenAttributes">
<AccessToken>{access_token}</AccessToken>
</GetOAuthV2Info> |
| Mendapatkan kebijakan atribut kode otorisasi |
|
Contoh kebijakan: <GetOAuthV2Info name="GetAuthCodeAttributes"> <AuthorizationCode ref="{variable_name}"/> </GetOAuthV2Info> Contoh kebijakan: <GetOAuthV2Info name="GetAuthCodeAttributes">
<AuthorizationCode>{authorization_code}</AuthorizationCode>
</GetOAuthV2Info> |
| Mendapatkan kebijakan atribut token refresh |
|
Contoh kebijakan: <GetOAuthV2Info name="GetTokenAttributes"> <RefreshToken ref="{variable_name}"/> </GetOAuthV2Info> Contoh kebijakan: <GetOAuthV2Info name="GetTokenAttributes">
<RefreshToken>{refresh_token}</RefreshToken>
</GetOAuthV2Info> |
Variabel alur OAuth 1.0a
Variabel alur yang ditentukan dalam tabel ini diisi saat kebijakan OAuth masing-masing dijalankan, sehingga tersedia untuk kebijakan atau aplikasi lain yang dijalankan dalam alur proxy API.
Membuat kebijakan token permintaan
Contoh kebijakan:
<OAuthV1 name="GenerateRequestToken"> <Operation>GenerateRequestToken</Operation> </OAuthV1>
Variabel yang ditetapkan saat berhasil:
oauth_tokenoauth_token_secretoauth_callback_confirmedoauth_responseoauth_consumer_keyoauth_consumer_secret
Membuat kebijakan token akses
Contoh kebijakan:
<OAuthV1 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> </OAuthV1>
Variabel yang ditetapkan saat berhasil:
oauth_tokenoauth_token_secretoauth_responseoauth_consumer_keyoauth_consumer_secret
Kebijakan verifikasi token akses
Contoh kebijakan:
<OAuthV1 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> </OAuthV1>
Variabel yang ditetapkan saat berhasil:
oauth_tokenoauth_token_secretoauth_responseoauth_consumer_keyoauth_consumer_secret
Memverifikasi kebijakan kunci API
Contoh kebijakan:
<GetOAuthV1Info name="VerifyApiKey"> <OAuthConfig>{config_name}</OAuthConfig>* <APIKey ref="{variable_name}" /> </GetOAuthV1Info>
* Opsional
Variabel yang ditetapkan saat berhasil:
oauth_consumer_keyoauth_consumer_secret
Memverifikasi kebijakan konsumen
Contoh kebijakan:
<GetOAuthV1Info name="VerifyConsumer"> <OAuthConfig>{config_name}</OAuthConfig>* <ConsumerKey ref="{variable_name}" /> </GetOAuthV1Info>
* Opsional
Variabel yang ditetapkan saat berhasil:
oauth_consumer_keyoauth_consumer_secret
Memverifikasi kebijakan token
Contoh kebijakan:
<GetOAuthV1Info name="VerifyToken"> <OAuthConfig>{config_name}</OAuthConfig>* <RequestToken ref="{variable_name}" /> </GetOAuthV1Info>
* Opsional
Variabel yang ditetapkan saat berhasil:
oauth_tokenoauth_token_secret