Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Apigee Edge mengenkapsulasi 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 ini 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 setiap kebijakan OAuth dijalankan, sehingga tersedia untuk kebijakan atau aplikasi lain yang dieksekusi di alur proxy API.
Memverifikasi kebijakan token akses |
* Variabel produk API |
Kebijakan contoh: <OAuthV2 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> <Scope>space-separated-scopes</Scope>* <AccessToken>flow.variable</AccessToken>* <AccessTokenPrefix>Bearer</AccessTokenPrefix>* </OAuthV2> Hanya token pemilik yang didukung. Token MAC tidak didukung. Secara default, token akses harus diteruskan di header permintaan HTTP Otorisasi. Contoh:
Setiap
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai spesifikasi OAuth 2.0. |
Buat kebijakan kode otorisasi |
Variabel yang ditetapkan saat berhasil:
|
Kebijakan contoh: <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 Setiap
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai spesifikasi OAuth 2.0. Nilai atribut diperoleh secara dinamis dari variabel flow yang ditentukan, atau secara statis menggunakan nilai default dalam kebijakan. Jika keduanya ditentukan, variabel flow akan diprioritaskan. |
Membuat kebijakan token akses untuk kode otorisasi jenis pemberian, kredensial pengguna, dan kredensial klien |
Variabel yang ditetapkan saat berhasil:
|
Kebijakan contoh: <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 Setiap
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai spesifikasi OAuth 2.0. Nilai atribut diperoleh secara dinamis dari variabel flow yang ditentukan, atau secara statis menggunakan nilai default dalam kebijakan. Jika keduanya ditentukan, variabel flow akan diprioritaskan. |
Membuat kebijakan token akses untuk Jenis pemberian implisit |
Variabel yang ditetapkan saat berhasil:
|
Kebijakan contoh: <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 Setiap
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai spesifikasi OAuth 2.0. Nilai atribut diperoleh secara dinamis dari variabel flow yang ditentukan, atau secara statis menggunakan nilai default dalam kebijakan. Jika keduanya ditentukan, variabel flow akan diprioritaskan. |
Perbarui kebijakan token akses |
Variabel yang ditetapkan saat berhasil:
|
Kebijakan contoh: <OAuthV2 name="RefreshAccessToken"> <Operation>RefreshAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <GrantType>flow.variable</GrantType>* <RefreshToken>flow.variable</RefreshToken>* </OAuthV2> * Opsional Setiap
Jika kolom opsional tidak ditentukan, nilai akan diekstrak sesuai spesifikasi OAuth 2.0. |
Mendapatkan kebijakan atribut klien |
Kebijakan contoh: <GetOAuthV2Info name="GetClientAttributes"> <ClientId ref="{variable_name}"/> </GetOAuthV2Info> Kebijakan contoh: <GetOAuthV2Info name="GetClientAttributes"> <ClientId>{client_id}</ClientId> </GetOAuthV2Info> |
Mendapatkan kebijakan atribut token akses |
Variabel yang ditetapkan saat berhasil:
|
Kebijakan contoh: <GetOAuthV2Info name="GetTokenAttributes"> <AccessToken ref="{variable_name}"/> </GetOAuthV2Info> Kebijakan contoh: <GetOAuthV2Info name="GetTokenAttributes"> <AccessToken>{access_token}</AccessToken> </GetOAuthV2Info> |
Mendapatkan kebijakan atribut kode otorisasi |
Kebijakan contoh: <GetOAuthV2Info name="GetAuthCodeAttributes"> <AuthorizationCode ref="{variable_name}"/> </GetOAuthV2Info> Kebijakan contoh: <GetOAuthV2Info name="GetAuthCodeAttributes"> <AuthorizationCode>{authorization_code}</AuthorizationCode> </GetOAuthV2Info> |
Mendapatkan kebijakan atribut token refresh |
Kebijakan contoh: <GetOAuthV2Info name="GetTokenAttributes"> <RefreshToken ref="{variable_name}"/> </GetOAuthV2Info> Kebijakan contoh: <GetOAuthV2Info name="GetTokenAttributes"> <RefreshToken>{refresh_token}</RefreshToken> </GetOAuthV2Info> |
Variabel alur OAuth 1.0a
Variabel alur yang ditentukan dalam tabel ini diisi saat setiap kebijakan OAuth dijalankan, sehingga tersedia untuk kebijakan atau aplikasi lain yang dieksekusi di alur proxy API.
Membuat kebijakan token permintaan
Kebijakan contoh:
<OAuthV1 name="GenerateRequestToken"> <Operation>GenerateRequestToken</Operation> </OAuthV1>
Variabel yang ditetapkan saat berhasil:
oauth_token
oauth_token_secret
oauth_callback_confirmed
oauth_response
oauth_consumer_key
oauth_consumer_secret
Membuat kebijakan token akses
Kebijakan contoh:
<OAuthV1 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> </OAuthV1>
Variabel yang ditetapkan saat berhasil:
oauth_token
oauth_token_secret
oauth_response
oauth_consumer_key
oauth_consumer_secret
Kebijakan verifikasi token akses
Kebijakan contoh:
<OAuthV1 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> </OAuthV1>
Variabel yang ditetapkan saat berhasil:
oauth_token
oauth_token_secret
oauth_response
oauth_consumer_key
oauth_consumer_secret
Memverifikasi kebijakan kunci API
Kebijakan contoh:
<GetOAuthV1Info name="VerifyApiKey"> <OAuthConfig>{config_name}</OAuthConfig>* <APIKey ref="{variable_name}" /> </GetOAuthV1Info>
* Opsional
Variabel yang ditetapkan saat berhasil:
oauth_consumer_key
oauth_consumer_secret
Memverifikasi kebijakan konsumen
Kebijakan contoh:
<GetOAuthV1Info name="VerifyConsumer"> <OAuthConfig>{config_name}</OAuthConfig>* <ConsumerKey ref="{variable_name}" /> </GetOAuthV1Info>
* Opsional
Variabel yang ditetapkan saat berhasil:
oauth_consumer_key
oauth_consumer_secret
Memverifikasi kebijakan token
Kebijakan contoh:
<GetOAuthV1Info name="VerifyToken"> <OAuthConfig>{config_name}</OAuthConfig>* <RequestToken ref="{variable_name}" /> </GetOAuthV1Info>
* Opsional
Variabel yang ditetapkan saat berhasil:
oauth_token
oauth_token_secret