Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
BERLAKU UNTUK: Semua tingkat API Management
API Management memungkinkan Anda mengamankan akses ke layanan backend API dengan menggunakan sertifikat klien dan autentikasi TLS bersama. Artikel ini memperlihatkan cara mengelola sertifikat di API Management dengan menggunakan portal Microsoft Azure. Ini juga menjelaskan cara mengonfigurasi API untuk menggunakan sertifikat untuk mengakses layanan backend.
Anda juga dapat mengelola sertifikat API Management dengan menggunakan API Management REST API.
Opsi sertifikat
API Management menyediakan dua opsi untuk mengelola sertifikat yang digunakan untuk mengamankan akses ke layanan backend:
- Referensikan sertifikat yang dikelola di Azure Key Vault.
- Tambahkan file sertifikat langsung di API Management.
Kami menyarankan agar Anda menggunakan sertifikat brankas kunci karena melakukannya meningkatkan keamanan API Management:
- Sertifikat yang disimpan dalam brankas kunci dapat digunakan kembali di seluruh layanan.
- Kebijakan akses terperinci dapat diterapkan ke sertifikat yang disimpan dalam brankas kunci.
- Sertifikat yang diperbarui dalam brankas kunci secara otomatis diputar di API Management. Setelah pembaruan di brankas kunci, sertifikat di API Management diperbarui dalam waktu empat jam. Anda juga dapat me-refresh sertifikat secara manual dengan menggunakan portal Microsoft Azure atau melalui REST API manajemen.
Prasyarat
Catatan
Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Untuk memulai, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.
Jika Anda belum membuat instans API Management, lihat Membuat instans layanan API Management.
Konfigurasikan autentikasi sertifikat klien layanan backend Anda. Untuk informasi tentang mengonfigurasi autentikasi sertifikat di Azure App Service, lihat Mengonfigurasi autentikasi bersama TLS di App Service.
Pastikan Anda memiliki akses ke sertifikat dan kata sandi untuk manajemen di brankas kunci Azure, atau sertifikat untuk diunggah ke layanan API Management. Sertifikat harus dalam format PFX. Sertifikat yang ditandatangani sendiri diperbolehkan.
Jika Anda menggunakan sertifikat yang ditandatangani sendiri:
Instal sertifikat CA akar dan menengah tepercaya di instans API Management Anda.
Catatan
Sertifikat CA untuk validasi sertifikat tidak didukung pada tier Consumption.
Nonaktifkan validasi rantai sertifikat. Lihat Menonaktifkan validasi rantai sertifikat untuk sertifikat yang ditandatangani sendiri nanti di artikel ini.
Prasyarat untuk integrasi brankas kunci
Catatan
Saat ini, fitur ini tidak tersedia di ruang kerja.
Jika Anda belum memiliki brankas kunci, buatlah. Untuk informasi tentang membuat brankas kunci, lihat Mulai Cepat: Membuat brankas kunci menggunakan portal Microsoft Azure.
Aktifkan identitas terkelola yang ditetapkan sistem atau ditetapkan pengguna di API Management.
Mengonfigurasi akses ke Key Vault
- Di portal, buka brankas kunci Anda.
- Di menu sebelah kiri, pilih Konfigurasi akses. Perhatikan Model izin yang dikonfigurasi.
- Bergantung pada model izin, konfigurasikan kebijakan akses ke brankas kunci atau akses Azure RBAC untuk identitas terkelola API Management.
Untuk menambahkan kebijakan akses Key Vault:
- Di menu sebelah kiri, pilih Kebijakan akses.
- Pada halaman Kebijakan akses , pilih + Buat.
- Pada tab Izin , di bawah Izin rahasia, pilih Dapatkan dan Daftar, lalu pilih Berikutnya.
- Pada tab Utama , pilih Utama, cari nama sumber daya identitas terkelola Anda, lalu pilih Berikutnya. Jika Anda menggunakan identitas yang diberikan oleh sistem, prinsipal adalah nama instans Pengelolaan API Anda.
- Pilih Berikutnya lagi. Di tab Tinjau + buat, pilih Buat.
Untuk membuat sertifikat di brankas kunci atau mengimpor sertifikat ke brankas kunci, lihat Mulai Cepat: Mengatur dan mengambil sertifikat dari Azure Key Vault menggunakan portal Microsoft Azure.
Persyaratan untuk firewall Key Vault
Jika firewall Key Vault diaktifkan di brankas kunci, Anda harus memenuhi persyaratan berikut:
Anda harus menggunakan identitas terkelola yang diberikan oleh sistem pada instans API Management untuk mengakses penyimpanan kunci.
Di firewall Key Vault, aktifkan opsi Izinkan Layanan Microsoft Tepercaya untuk melewati firewall ini.
Pastikan bahwa alamat IP klien lokal Anda diizinkan untuk mengakses brankas kunci untuk sementara saat Anda memilih sertifikat atau rahasia untuk ditambahkan ke Azure API Management. Untuk informasi lebih lanjut, lihat Mengonfigurasi pengaturan jaringan Azure Key Vault.
Setelah menyelesaikan konfigurasi, Anda dapat memblokir alamat klien di firewall brankas kunci.
Persyaratan jaringan virtual
Jika instance Manajemen API diterapkan di jaringan virtual, konfigurasikan juga pengaturan jaringan berikut:
- Aktifkan titik akhir layanan ke Key Vault pada subnet API Management.
- Mengonfigurasi aturan grup keamanan jaringan (NSG) untuk memungkinkan lalu lintas keluar ke tag layanan AzureKeyVault dan AzureActiveDirectory.
Untuk detailnya, lihat Konfigurasi jaringan saat menyiapkan API Management di jaringan virtual.
Menambahkan sertifikat penyimpanan kunci
Lihat Prasyarat untuk integrasi Key Vault.
Penting
Untuk menambahkan sertifikat brankas kunci ke instans API Management, Anda harus memiliki izin untuk mencantumkan rahasia dari brankas kunci.
Perhatian
Saat menggunakan sertifikat brankas kunci di API Management, berhati-hatilah untuk tidak menghapus sertifikat, brankas kunci, atau identitas terkelola yang digunakan untuk mengakses brankas kunci.
Untuk menambahkan sertifikat Key Vault ke API Management:
Di portal Microsoft Azure, buka instans API Management Anda.
Di bawah Keamanan, pilih Sertifikat.
Pilih Sertifikat>+ Tambahkan.
Di Id, masukkan nama.
Di Sertifikat, pilih Brankas kunci.
Masukkan pengidentifikasi sertifikat brankas kunci, atau pilih Pilih untuk memilih sertifikat dari brankas kunci.
Penting
Jika Anda memasukkan sendiri pengidentifikasi sertifikat brankas kunci, pastikan sertifikat tersebut tidak memiliki informasi versi. Jika tidak, sertifikat tidak akan diputar secara otomatis di API Management setelah pembaruan di brankas kunci.
Di Identitas klien, pilih identitas yang ditetapkan sistem atau identitas terkelola yang ditetapkan pengguna yang sudah ada. Untuk informasi selengkapnya, lihat Menggunakan identitas terkelola di Azure API Management.
Catatan
Identitas harus memiliki izin untuk mendapatkan dan mendaftar sertifikat dari Key Vault. Jika Anda belum mengonfigurasi akses ke brankas kunci, API Management akan meminta Anda agar dapat mengonfigurasi identitas secara otomatis dengan izin yang diperlukan.
Pilih Tambahkan.
Pilih Simpan.
Mengunggah sertifikat
Untuk mengunggah sertifikat klien ke API Management:
Di portal Microsoft Azure, buka instans API Management Anda.
Di bawah Keamanan, pilih Sertifikat.
Pilih Sertifikat>+ Tambahkan.
Di Id, masukkan nama.
Di Sertifikat, pilih Kustom.
Klik untuk memilih file sertifikat .pfx, dan masukkan kata sandinya.
Pilih Tambahkan.
Pilih Simpan.
Setelah sertifikat diunggah, sertifikat akan muncul di jendela Sertifikat. Jika Anda memiliki banyak sertifikat, perhatikan thumbprint sertifikat yang baru saja Anda unggah. Anda akan memerlukannya untuk mengonfigurasi API untuk menggunakan sertifikat klien untuk autentikasi gateway.
Mengonfigurasi API untuk menggunakan sertifikat klien untuk autentikasi gateway
Di portal Microsoft Azure, buka instans API Management Anda.
Di bawah API, pilih API.
Pilih API dari daftar.
Pada tab Desain , pilih ikon pensil di bagian Backend .
Di Kredensial Gateway, pilih Sertifikasi klien lalu pilih sertifikat Anda di daftar Sertifikat klien .
Pilih Simpan.
Perhatian
Perubahan ini segera berlaku. Panggilan ke operasi API akan menggunakan sertifikat untuk mengautentikasi di server backend.
Petunjuk / Saran
Ketika sertifikat ditentukan untuk autentikasi gateway untuk layanan backend API, sertifikat tersebut menjadi bagian dari kebijakan untuk API tersebut dan dapat dilihat di editor kebijakan.
Menonaktifkan validasi rantai sertifikat untuk sertifikat yang ditandatangani sendiri
Jika Anda menggunakan sertifikat yang ditandatangani sendiri, Anda perlu menonaktifkan validasi rantai sertifikat untuk memungkinkan API Management berkomunikasi dengan sistem backend. Jika tidak, Anda akan mendapatkan kode kesalahan 500. Untuk menonaktifkan validasi ini, Anda dapat menggunakan New-AzApiManagementBackend
cmdlet PowerShell (untuk backend baru) atau Set-AzApiManagementBackend
(untuk backend yang sudah ada) dan mengatur -SkipCertificateChainValidation
parameter ke True
:
$context = New-AzApiManagementContext -ResourceGroupName 'ContosoResourceGroup' -ServiceName 'ContosoAPIMService'
New-AzApiManagementBackend -Context $context -Url 'https://contoso.com/myapi' -Protocol http -SkipCertificateChainValidation $true
Anda juga dapat menonaktifkan validasi rantai sertifikat dengan menggunakan BACKEND REST API.
Menghapus sertifikat klien
Untuk menghapus sertifikat, pilih Hapus pada menu elipsis (...):
Penting
Jika sertifikat dirujuk oleh kebijakan apa pun, layar peringatan akan muncul. Untuk menghapus sertifikat, Anda harus terlebih dahulu menghapusnya dari kebijakan apa pun yang dikonfigurasi untuk menggunakannya.