Akses aman ke portal pengembang API Management

BERLAKU UNTUK: Pengembang | Dasar | Dasar v2 | Standar | Standar v2 | Premium

API Management memiliki portal pengembang terkelola yang dapat disesuaikan sepenuhnya, mandiri, yang dapat digunakan secara eksternal (atau internal) untuk memungkinkan pengguna pengembang menemukan dan berinteraksi dengan API yang diterbitkan melalui API Management. Portal pengembang memiliki beberapa opsi untuk memfasilitasi pendaftaran dan masuk pengguna yang aman.

Catatan

Secara default, portal pengembang memungkinkan akses anonim. Ini berarti bahwa siapa pun dapat melihat portal dan konten seperti API tanpa masuk, meskipun fungsionalitas seperti menggunakan konsol pengujian dibatasi. Anda dapat mengaktifkan pengaturan yang mengharuskan pengguna untuk masuk untuk melihat portal pengembang. Di portal Azure, di menu sebelah kiri instans API Management Anda, di bawah Portal pengembang, pilih Identitas> Pengaturan. Di bawah Pengguna anonim, pilih (aktifkan) Alihkan pengguna anonim ke halaman masuk.

Opsi autentikasi

  • Pengguna eksternal - Opsi yang disukai saat portal pengembang digunakan secara eksternal adalah mengaktifkan kontrol akses bisnis ke konsumen melalui Azure Active Directory B2C (Azure AD B2C).

    • Azure Active Directory B2C menyediakan opsi untuk menggunakan akun asli Azure Active Directory B2C: pengguna mendaftar ke Azure Active Directory B2C dan menggunakan identitas tersebut untuk mengakses portal pengembang.
    • Azure Active Directory B2C juga berguna jika Anda ingin pengguna mengakses portal pengembang menggunakan media sosial yang ada atau akun organisasi federasi.
    • Azure Active Directory B2C menyediakan banyak fitur untuk meningkatkan pengalaman pendaftaran dan masuk pengguna akhir, termasuk akses bersyarat dan MFA.

    Untuk langkah-langkah mengaktifkan autentikasi Azure Active Directory B2C di portal pengembang, lihat Cara mengotorisasi akun pengembang dengan menggunakan Azure Active Directory B2C di Azure API Management.

  • Pengguna internal - Opsi yang disukai saat portal pengembang dikonsumsi secara internal adalah memanfaatkan ID Microsoft Entra perusahaan Anda. MICROSOFT Entra ID memberikan pengalaman akses menyeluruh (SSO) yang mulus bagi pengguna perusahaan yang perlu mengakses dan menemukan API melalui portal pengembang.

    Untuk langkah-langkah mengaktifkan autentikasi Microsoft Entra di portal pengembang, lihat Cara mengotorisasi akun pengembang dengan menggunakan ID Microsoft Entra di Azure API Management.

  • Autentikasi dasar - Opsi default adalah menggunakan nama pengguna dan penyedia kata sandi portal pengembang bawaan, yang memungkinkan pengembang untuk mendaftar langsung di API Management dan masuk menggunakan akun pengguna API Management. Pendaftaran pengguna melalui opsi ini dilindungi oleh layanan CAPTCHA.

Konsol pengujian portal pengembang

Selain menyediakan konfigurasi bagi pengguna pengembang untuk mendaftar akses dan masuk, portal pengembang menyertakan konsol pengujian tempat pengembang dapat mengirim permintaan pengujian melalui API Management ke API backend. Fasilitas pengujian ini juga tersedia untuk pengguna yang berkontribusi dari API Management yang mengelola layanan menggunakan portal Microsoft Azure.

Jika API yang diekspos melalui Azure API Management diamankan dengan OAuth 2.0 - yaitu, aplikasi panggilan (pembawa) perlu mendapatkan dan meneruskan token akses yang valid - Anda dapat mengonfigurasi API Management untuk menghasilkan token yang valid atas nama pengguna konsol pengujian portal portal Azure atau pengembang. Untuk informasi selengkapnya, lihat Cara mengotorisasi konsol pengujian portal pengembang dengan mengonfigurasi otorisasi pengguna OAuth 2.0.

Untuk mengaktifkan konsol pengujian guna memperoleh token OAuth 2.0 yang valid untuk pengujian API:

  1. Tambahkan server otorisasi pengguna OAuth 2.0 ke instans Anda. Anda dapat menggunakan penyedia OAuth 2.0 apa pun, termasuk ID Microsoft Entra, Azure AD B2C, atau IdP pihak ketiga.

  2. Kemudian, konfigurasikan API dengan pengaturan untuk server otorisasi tersebut. Di portal, konfigurasikan otorisasi OAuth 2.0 pada halaman >Pengaturan API otorisasi Pengguna Keamanan>.

    Cuplikan layar pengaturan OAuth untuk API di portal.

Konfigurasi OAuth 2.0 ini untuk pengujian API tidak bergantung pada konfigurasi yang diperlukan untuk akses pengguna ke portal pengembang. Namun, penyedia identitas dan pengguna bisa sama. Misalnya, aplikasi intranet dapat memerlukan akses pengguna ke portal pengembang menggunakan SSO dengan identitas perusahaan mereka. Identitas perusahaan yang sama dapat memperoleh token, melalui konsol pengujian, untuk layanan backend yang dipanggil dengan konteks pengguna yang sama.

Skenario

Opsi autentikasi dan otorisasi yang berbeda berlaku untuk skenario yang berbeda. Bagian berikut mengeksplorasi konfigurasi tingkat tinggi untuk tiga skenario contoh. Langkah-langkah lainnya diperlukan untuk sepenuhnya mengamankan dan mengonfigurasi API yang diekspos melalui API Management. Namun, skenario sengaja berfokus pada konfigurasi minimum yang direkomendasikan dalam setiap kasus untuk memberikan autentikasi dan otorisasi yang diperlukan.

Skenario 1 - API dan aplikasi Intranet

  • Kontributor API Management dan pengembang API backend ingin menerbitkan API yang diamankan oleh OAuth 2.0.
  • API akan digunakan oleh aplikasi desktop yang penggunanya masuk menggunakan SSO melalui ID Microsoft Entra.
  • Pengembang aplikasi desktop juga perlu menemukan dan menguji API melalui portal pengembang API Management.

Konfigurasi Kunci:

Konfigurasi Referensi
Otorisasi pengguna pengembang portal pengembang API Management menggunakan identitas perusahaan dan ID Microsoft Entra mereka. Otorisasi akun pengembang menggunakan Microsoft Entra ID di Azure API Management
Siapkan konsol pengujian di portal pengembang untuk mendapatkan token OAuth 2.0 yang valid bagi pengembang aplikasi desktop untuk menjalankan API backend.

Konfigurasi yang sama dapat digunakan untuk konsol pengujian di portal Azure, yang dapat diakses oleh kontributor API Management dan pengembang backend.

Token dapat digunakan dalam kombinasi dengan kunci langganan API Management.
Cara mengotorisasi konsol pengujian portal pengembang dengan mengonfigurasi otorisasi pengguna OAuth 2.0

Langganan di API Management Azure
Validasi token OAuth 2.0 dan klaim saat API dipanggil melalui API Management dengan token akses. Memvalidasi kebijakan JWT

Melangkah lebih jauh dengan skenario ini dengan memindahkan API Management ke perimeter jaringan dan mengontrol ingress melalui proksi terbalik. Untuk arsitektur referensi, lihat Melindungi API dengan Application Gateway dan API Management.

Skenario 2 - External API, aplikasi mitra

  • Kontributor API Management dan pengembang API backend ingin melakukan bukti konsep yang cepat untuk mengekspos API warisan melalui Azure API Management. API melalui API Management akan dihadapi secara eksternal (internet).
  • API menggunakan autentikasi sertifikat klien dan akan digunakan oleh aplikasi halaman tunggal (SPA) baru yang sedang dikembangkan di luar negeri oleh mitra.
  • SPA menggunakan OAuth 2.0 dengan OpenID Koneksi (OIDC).
  • Pengembang aplikasi akan mengakses API di lingkungan pengujian melalui portal pengembang, menggunakan titik akhir backend pengujian untuk mempercepat pengembangan frontend.

Konfigurasi Kunci:

Konfigurasi Referensi
Konfigurasikan akses pengembang frontend ke portal pengembang menggunakan autentikasi nama pengguna dan kata sandi default.

Pengembang juga dapat diundang ke portal pengembang.
Mengonfigurasi pengguna portal pengembang untuk mengautentikasi menggunakan nama pengguna dan kata sandi

Cara mengelola akun pengguna di API Management Azure
Validasi token OAuth 2.0 dan klaim saat SPA memanggil API Management dengan token akses. Dalam hal ini, audiens API Management. Memvalidasi kebijakan JWT
Siapkan API Management untuk menggunakan autentikasi sertifikat klien ke backend. Mengamankan layanan backend menggunakan autentikasi sertifikat klien di Azure API Management

Melangkah lebih jauh dengan skenario ini dengan menggunakan portal pengembang dengan otorisasi Microsoft Entra dan kolaborasi Microsoft Entra B2B untuk memungkinkan mitra pengiriman berkolaborasi lebih erat. Pertimbangkan untuk mendelegasikan akses ke API Management melalui RBAC dalam lingkungan pengembangan atau pengujian dan aktifkan SSO ke portal pengembang menggunakan kredensial perusahaan mereka sendiri.

Skenario 3 - API Eksternal, SaaS, terbuka untuk umum

  • Kontributor API Management dan pengembang API backend menulis beberapa API baru yang akan tersedia untuk pengembang komunitas.

  • API akan tersedia untuk umum, dengan fungsionalitas penuh yang dilindungi di belakang paywall dan diamankan menggunakan OAuth 2.0. Setelah membeli lisensi, pengembang akan diberikan kredensial klien mereka sendiri dan kunci langganan yang valid untuk penggunaan produksi.

  • Pengembang komunitas eksternal akan menemukan API menggunakan portal pengembang. Pengembang akan mendaftar dan masuk ke portal pengembang menggunakan akun media sosial mereka.

  • Pengguna portal pengembang yang tertarik dengan kunci langganan pengujian dapat menjelajahi fungsionalitas API dalam konteks pengujian, tanpa perlu membeli lisensi. Konsol pengujian portal pengembang akan mewakili aplikasi panggilan dan menghasilkan token akses default ke API backend.

    Perhatian

    Perawatan ekstra diperlukan saat menggunakan alur kredensial klien dengan konsol pengujian portal pengembang. Lihat Pertimbangan keamanan.

Konfigurasi Kunci:

Konfigurasi Referensi
Siapkan produk di Azure API Management untuk mewakili kombinasi API yang diekspos ke pengembang komunitas.

Siapkan langganan untuk memungkinkan pengembang menggunakan API.
Tutorial: Membuat dan menerbitkan produk

Langganan di API Management Azure
Konfigurasikan akses pengembang komunitas ke portal pengembang menggunakan Azure Active Directory B2C. Azure Active Directory B2C kemudian dapat dikonfigurasi untuk bekerja dengan satu atau beberapa penyedia identitas media sosial hilir. Cara mengotorisasi akun developer dengan menggunakan Azure Active Directory B2C di Azure API Management
Siapkan konsol pengujian di portal pengembang untuk mendapatkan token OAuth 2.0 yang valid ke API backend menggunakan alur kredensial klien. Cara mengotorisasi konsol pengujian portal pengembang dengan mengonfigurasi otorisasi pengguna OAuth 2.0

Sesuaikan langkah-langkah konfigurasi yang ditunjukkan dalam artikel ini untuk menggunakan alur pemberian kredensial klien alih-alih alur pemberian kode otorisasi.

Melangkah lebih jauh dengan mendelegasikan pendaftaran pengguna atau langganan produk dan memperpanjang proses dengan logika Anda sendiri.

Langkah berikutnya