Topik OAuth 2.0 lanjutan

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Menggunakan token OAuth pihak ketiga

Lihat Menggunakan Token OAuth Pihak Ketiga.

Menetapkan beberapa URL callback

Saat menggunakan jenis pemberian kode otorisasi, Anda harus menentukan URL callback saat mendaftarkan aplikasi developer. URL callback biasanya menentukan URL aplikasi yang ditetapkan untuk menerima kode otorisasi atas nama aplikasi klien. Selain itu, string URL ini digunakan untuk validasi. Klien diwajibkan untuk mengirim URL ini ke Apigee Edge saat meminta kode otorisasi dan token akses, dan parameter redirect_uri harus cocok dengan parameter yang terdaftar. Lihat juga Meminta token akses dan kode otorisasi.

Contoh:

http://myorg-test.apigee.net/weather/oauth/authorizationcode?client_id=123456&response_type=code&redirect_uri=http://example.com/callback&scope=scope1%20scope2&state=abc

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

  • http://myexample.com/callback
  • http://myexample.uk/callback
  • http://myexample.ja/callback

Edge tidak mendukung penentuan beberapa URL callback atau penggunaan karakter pengganti saat aplikasi developer didaftarkan. Untuk menyelesaikan kasus penggunaan ini, Anda dapat menentukan URL callback kosong saat mendaftarkan aplikasi developer, lalu memasukkan logika dalam kebijakan JavaScript untuk memvalidasi URI pengalihan yang masuk.

Mengubah perilaku return default operasi GenerateAuthCode

Secara default, operasi GenerateAuthCode dari kebijakan OAuthV2 menampilkan pengalihan 302 ke URL callback 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 mencapai 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 diminta untuk memverifikasi bahwa pengguna akhir aplikasi telah memberikan otorisasi ke aplikasi. Anda dapat menggunakan Audit API Apigee Edge untuk melakukannya.

Contoh OAuth keluar

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