Topik OAuth 2.0 lanjutan

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Menggunakan token OAuth pihak ketiga

Lihat Menggunakan token OAuth pihak ketiga.

Menetapkan beberapa URI pengalihan

Saat menggunakan jenis pemberian kode otorisasi, Anda harus menentukan URI pengalihan saat mendaftarkan aplikasi developer. URI pengalihan menentukan URI aplikasi yang ditunjuk untuk menerima kode otorisasi atas nama aplikasi klien. Klien diwajibkan untuk mengirimkan URI ini ke Apigee saat meminta kode dan token otorisasi, dan parameter redirect_uri harus cocok dengan yang terdaftar. Lihat juga Mendapatkan token OAuth 2.0.

Contoh:

https://mydomain.com/authorize?\
client_id=123456&\
response_type=code&\
redirect_uri=https%3A%2F%2Fmydomain.com%2Fcallback&scope=scope1%20scope2&state=abc

Ada kasus penggunaan untuk menentukan beberapa URI pengalihan dalam satu aplikasi proxy. Misalnya, Anda mungkin ingin mengautentikasi beberapa domain. Misalnya:

  • https://mydomain.com/callback
  • https://mydomain.uk/callback
  • https://mydomain.ja/callback

Untuk menentukan beberapa URI pengalihan di aplikasi developer, tambahkan URI tersebut sebagai daftar yang dipisahkan koma di kolom URL Callback di UI aplikasi developer. Contoh:

https://mydomain.com/callback,https://mydomain.uk/callback,https://mydomain.ja/callback

Perhatikan bahwa permintaan /authorize hanya boleh membawa satu URI dalam parameter redirect_uri. Selama URI pengalihan cocok dengan salah satu URI yang ditentukan di kolom URL Callback di UI aplikasi developer, permintaan akan berhasil.

Mengubah perilaku default return operasi GenerateAuthCode

Secara default, operasi GenerateAuthCode kebijakan OAuthv2 menampilkan pengalihan 302 ke URI pengalihan dengan parameter kueri ?code yang berisi kode otorisasi.

Dalam beberapa kasus, Anda mungkin ingin mengubah perilaku ini. Misalnya, Anda mungkin ingin menampilkan respons 200 dengan JSON terstruktur yang berisi kode.

Salah satu cara untuk menyelesaikan kasus penggunaan ini adalah dengan menetapkan properti GenerateResponse kebijakan OAuthV2 ke false. Gunakan kebijakan ExtractVariable untuk mendapatkan nilai kode otorisasi dari variabel oauthv2authcode.{policy_name}.code. Kemudian, Anda dapat menggunakan kebijakan AssignMessage untuk menampilkan kode dalam payload JSON dengan status 200.

Mengaudit izin pengguna akhir aplikasi

Anda mungkin diwajibkan untuk memverifikasi bahwa pengguna akhir aplikasi mengizinkan aplikasi. Anda dapat menggunakan Apigee Audit API untuk melakukannya.

Contoh OAuth keluar

Lihat contoh outbound-oauth di repositori api-platform-samples Apigee di GitHub. Anda dapat meng-clone sampel, men-deploy-nya, dan menjalankannya. Contoh ini menggunakan Microsoft Azure Translator API untuk menerjemahkan tweet. Untuk melakukannya, aplikasi melakukan panggilan keluar untuk mendapatkan token akses OAuth, lalu menyimpan token ke dalam cache menggunakan kebijakan penyimpanan ke dalam cache API Services, dengan menggunakan kembali token yang di-cache setiap kali panggilan keluar dilakukan. Selain itu, mencakup aplikasi browser demonstrasi yang digunakan untuk memanggil proxy API.