Sediakan akses ke kunci, sertifikat, dan rahasia Key Vault dengan kontrol akses berbasis peran Azure
Catatan
Penyedia sumber daya Key Vault mendukung dua jenis sumber daya: vault dan HSM terkelola. Kontrol akses yang dijelaskan di artikel ini hanya berlaku untuk vault. Untuk mempelajari lebih lanjut tentang kontrol akses untuk HSM terkelola, lihat Kontrol akses HSM terkelola.
Catatan
Konfigurasi sertifikat Azure App Service melalui Portal Azure tidak mendukung model izin RBAC Key Vault. Anda dapat menggunakan penyebaran templat Azure PowerShell, Azure CLI, ARM dengan penetapan peran Pengguna Sertifikat Key Vault untuk identitas global App Service, misalnya Microsoft Azure App Service' di cloud publik.
Kontrol akses berbasis peran Azure (Azure RBAC) adalah sistem otorisasi yang dibangun di Azure Resource Manager yang menyediakan manajemen akses terpusat sumber daya Azure.
Azure RBAC memungkinkan pengguna mengelola izin kunci, rahasia, dan sertifikat, dan menyediakan satu tempat untuk mengelola semua izin di semua brankas kunci.
Model Azure RBAC memungkinkan pengguna untuk mengatur izin pada tingkat cakupan yang berbeda: grup manajemen, langganan, grup sumber daya, atau sumber daya individual. Azure RBAC untuk brankas kunci juga memungkinkan pengguna untuk memiliki izin terpisah pada masing-masing kunci, rahasia, dan sertifikat.
Untuk mengetahui informasi selengkapnya, lihat Kontrol akses berbasis peran Azure (RBAC Azure).
Praktik Terbaik untuk penetapan peran kunci, rahasia, dan sertifikat individu
Rekomendasi kami adalah menggunakan vault per aplikasi per lingkungan (Pengembangan, Pra-Produksi, dan Produksi) dengan peran yang ditetapkan di cakupan brankas kunci.
Menetapkan peran pada kunci, rahasia, dan sertifikat individual harus dihindari. Pengecualian adalah skenario di mana rahasia individu harus dibagikan antara beberapa aplikasi; misalnya, di mana satu aplikasi perlu mengakses data dari aplikasi lain.
Untuk mengetahui informasi selengkapnya tentang panduan manajemen Azure Key Vault, lihat:
Peran bawaan Azure untuk operasi bidang data Key Vault
Catatan
Perannya Key Vault Contributor
adalah untuk operasi bidang manajemen hanya untuk mengelola brankas kunci. Hal ini tidak mengizinkan akses ke kunci, rahasia, dan sertifikat.
Peran bawaan | Deskripsi | ID |
---|---|---|
Administrator Key Vault | Lakukan semua operasi bidang data pada brankas kunci dan semua objek di dalamnya, termasuk sertifikat, kunci, dan rahasia. Tidak dapat mengelola sumber daya brankas kunci atau mengelola penetapan peran. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | 00482a5a-887f-4fb3-b363-3b7fe8e74483 |
Pembaca Key Vault | Baca metadata brankas kunci serta sertifikat, kunci, dan rahasianya. Tidak dapat membaca nilai sensitif seperti konten rahasia atau materi kunci. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | 21090545-7ca7-4776-b22c-e363652d74d2 |
Operator Penghapusan Menyeluruh Key Vault | Memungkinkan penghapusan permanen vault yang dihapus sementara. | a68e7c17-0ab2-4c09-9a58-125dae29748c |
Petugas Sertifikat Key Vault | Lakukan tindakan apa pun pada sertifikat brankas kunci, tidak termasuk membaca bagian rahasia dan kunci, dan mengelola izin. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | a4417e6f-fecd-4de8-b567-7b0420556985 |
Pengguna Sertifikat Key Vault | Membaca seluruh konten sertifikat termasuk bagian rahasia dan kunci. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | db79e9a7-68ee-4b58-9aeb-b90e7c24fcba |
Petugas Kripto Key Vault | Lakukan tindakan apa pun pada kunci brankas kunci, kecuali izin kelola. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | 14b46e9e-c2b7-41b4-b07b-48a6ebf60603 |
Pengguna Enkripsi Layanan Kripto Key Vault | Baca metadata kunci dan lakukan operasi bungkus/buka bungkus. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | e147488a-f6f5-4113-8e2d-b22465e65bf6 |
Pengguna Kripto Key Vault | Lakukan operasi kriptografi menggunakan kunci. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | 12338af0-0e69-4776-bea7-57ae8d297424 |
Pengguna Rilis Layanan Kripto Key Vault | Kunci rilis untuk Azure Confidential Computing dan lingkungan yang setara. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | |
Petugas Rahasia Key Vault | Lakukan tindakan apa pun pada rahasia brankas kunci, kecuali izin kelola. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | b86a8fe4-44ce-4948-aee5-eccb2c155cd7 |
Pengguna Rahasia Key Vault | Membaca konten rahasia termasuk bagian rahasia sertifikat dengan kunci privat. Hanya berfungsi untuk brankas kunci yang menggunakan model izin 'kontrol akses berbasis peran Azure'. | 4633458b-17de-408a-b874-0445c86b69e6 |
Untuk informasi selengkapnya tentang definisi peran bawaan Azure, lihat peran bawaan Azure.
Mengelola penetapan peran bidang data Key Vault bawaan
Peran bawaan | Deskripsi | ID |
---|---|---|
Administrator Akses Data Key Vault | Kelola akses ke Azure Key Vault dengan menambahkan atau menghapus penetapan peran untuk Administrator Key Vault, Petugas Sertifikat Key Vault, Petugas Kripto Key Vault, Pengguna Enkripsi Layanan Kripto Key Vault, Pengguna Kripto Key Vault, Pembaca Key Vault, Petugas Rahasia Key Vault, atau Peran Pengguna Rahasia Key Vault. Menyertakan kondisi ABAC untuk membatasi penetapan peran. | 8b54135c-b56d-4d72-a534-26097cfdc8d8 |
Menggunakan izin rahasia, kunci, dan sertifikat RBAC Azure dengan Key Vault
Model izin RBAC Azure baru untuk brankas kunci memberikan alternatif untuk model izin kebijakan akses vault.
Prasyarat
Anda harus memiliki langganan Azure yang aktif. Jika Anda tidak memilikinya, buatlah akun gratis sebelum memulai.
Untuk mengelola penetapan peran, Anda harus memiliki Microsoft.Authorization/roleAssignments/write
izin dan Microsoft.Authorization/roleAssignments/delete
, seperti Administrator Akses Data Key Vault (dengan izin terbatas untuk hanya menetapkan/menghapus peran Key Vault tertentu), Administrator Akses Pengguna, atau Pemilik.
Mengaktifkan izin RBAC Azure pada Key Vault
Catatan
Mengubah model izin memerlukan izin 'Microsoft.Authorization/roleAssignments/write' yang tidak dibatasi, yang merupakan bagian dari peran Pemilik dan Administrator Akses Pengguna. Peran administrator langganan klasik seperti 'Administrator Layanan' dan 'Administrator Bersama', atau 'Administrator Akses Data Key Vault' yang dibatasi tidak dapat digunakan untuk mengubah model izin.
Aktifkan izin RBAC Azure pada brankas kunci baru:
Aktifkan izin RBAC Azure pada brankas kunci yang ada:
Penting
Pengaturan model izin RBAC Azure membatalkan semua izin kebijakan akses. Hal ini dapat menyebabkan pemadaman ketika peran Azure yang setara tidak ditetapkan.
Menetapkan peran
Catatan
Disarankan untuk menggunakan ID peran unik daripada nama peran dalam skrip. Oleh karena itu, jika peran diganti namanya, skrip Anda akan terus berfungsi. Dalam nama peran dokumen ini digunakan untuk keterbacaan.
Untuk membuat penetapan peran menggunakan Azure CLI, gunakan perintah penetapan peran az:
az role assignment create --role {role-name-or-id} --assignee {assignee-upn}> --scope {scope}
Untuk informasi selengkapnya, lihat Tetapkan peran Azure menggunakan Azure CLI.
Penetapan peran cakupan grup sumber daya
az role assignment create --role "Key Vault Reader" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}
Untuk informasi selengkapnya, lihat Tetapkan peran Azure menggunakan Azure CLI.
Penetapan peran di atas memberikan kemampuan untuk membuat daftar objek brankas kunci di brankas kunci.
Penetapan peran cakupan Key Vault
az role assignment create --role "Key Vault Secrets Officer" --assignee {assignee-upn} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}
Untuk informasi selengkapnya, lihat Tetapkan peran Azure menggunakan Azure CLI.
Penetapan peran cakupan rahasia
Catatan
Rahasia brankas kunci, sertifikat, penetapan peran cakupan kunci hanya boleh digunakan untuk skenario terbatas yang dijelaskan di sini untuk mematuhi praktik terbaik keamanan.
az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}/secrets/RBACSecret
Untuk informasi selengkapnya, lihat Tetapkan peran Azure menggunakan Azure CLI.
Menguji dan memverifikasi
Catatan
Browser menggunakan penembolokan dan refresh halaman diperlukan setelah menghapus penetapan peran. Beri waktu beberapa menit agar penetapan peran di-refresh
Validasi penambahan rahasia baru tanpa peran "Petugas Rahasia Key Vault" pada tingkat brankas kunci.
Buka tab kontrol Akses brankas kunci (IAM) dan hapus penetapan peran "Petugas Rahasia Key Vault" untuk sumber daya ini.
Arahkan ke rahasia yang dibuat sebelumnya. Anda dapat melihat semua properti rahasia.
Buat rahasia baru ( Rahasia > +Hasilkan/Impor) harus menunjukkan kesalahan ini:
Validasi pengeditan rahasia tanpa peran "Petugas Rahasia Key Vault" pada tingkat rahasia.
Buka tab Microsoft Azure Access Control Service rahasia (IAM) yang sebelumnya dibuat dan hapus penetapan peran "Petugas Rahasia Key Vault" untuk sumber daya ini.
Arahkan ke rahasia yang dibuat sebelumnya. Anda dapat melihat properti rahasia.
Memvalidasi rahasia yang dibaca tanpa peran pembaca pada tingkat brankas kunci.
Buka tab kontrol Akses grup sumber daya brankas kunci (IAM) dan hapus penetapan peran "Pembaca Key Vault".
Menavigasi ke tab Rahasia brankas kunci akan menampilkan kesalahan ini:
Membuat peran kustom
perintah buat definisi peran az
az role definition create --role-definition '{ \
"Name": "Backup Keys Operator", \
"Description": "Perform key backup/restore operations", \
"Actions": [
], \
"DataActions": [ \
"Microsoft.KeyVault/vaults/keys/read ", \
"Microsoft.KeyVault/vaults/keys/backup/action", \
"Microsoft.KeyVault/vaults/keys/restore/action" \
], \
"NotDataActions": [
], \
"AssignableScopes": ["/subscriptions/{subscriptionId}"] \
}'
Untuk Informasi selengkapnya tentang cara membuat peran kustom, lihat:
Pertanyaan Umum
Dapatkah saya menggunakan penetapan cakupan objek model izin kontrol akses berbasis peran (RBAC) Key Vault untuk menyediakan isolasi bagi tim aplikasi dalam Key Vault?
Tidak. Model izin RBAC memungkinkan Anda menetapkan akses ke objek individual di Key Vault ke pengguna atau aplikasi, tetapi operasi administratif apa pun seperti kontrol akses jaringan, pemantauan, dan manajemen objek memerlukan izin tingkat brankas, yang kemudian akan mengekspos informasi aman kepada operator di seluruh tim aplikasi.