Bagikan melalui


Manajemen peran Managed HSM

Nota

Key Vault mendukung dua jenis sumber daya: vault dan HSM terkelola. Artikel ini adalah tentang HSM Terkelola. Jika Anda ingin mempelajari cara mengelola vault, lihat Mengelola Key Vault menggunakan Azure CLI.

Artikel ini menyediakan instruksi praktis untuk mengelola peran dan penetapan peran untuk HSM Terkelola menggunakan Azure CLI. Ini mengimplementasikan model kontrol akses berbasis peran yang dijelaskan dalam Kontrol akses untuk HSM Terkelola menggunakan peran bawaan yang didokumentasikan dalam peran bawaan RBAC Lokal untuk HSM Terkelola.

Untuk gambaran umum HSM Terkelola, lihat Apa itu HSM Terkelola?. Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum memulai.

Untuk mengizinkan prinsipal keamanan (seperti pengguna, prinsipal layanan, grup, atau identitas terkelola) untuk melakukan operasi data plane HSM yang dikelola, mereka harus ditetapkan peran yang mengizinkan melakukan operasi tersebut. Contohnya, jika Anda ingin mengizinkan aplikasi untuk melakukan operasi tanda menggunakan kunci, aplikasi harus menetapkan peran yang berisi "Microsoft.KeyVault/managedHSM/keys/sign/action" sebagai salah satu tindakan data. Peran dapat ditetapkan pada cakupan tertentu. RBAC lokal Managed HSM mendukung dua cakupan, seluruh HSM (/ atau /keys) dan per kunci (/keys/<keyname>).

Untuk daftar semua peran bawaan HSM Terkelola dan operasi yang diizinkan, lihat Peran bawaan HSM terkelola.

Prasyarat

Untuk menggunakan perintah Azure CLI dalam artikel ini, Anda harus memiliki item berikut:

Azure Cloud Shell

Azure menghosting Azure Cloud Shell, lingkungan shell interaktif yang dapat Anda gunakan melalui browser Anda. Anda dapat menggunakan Bash atau PowerShell dengan Cloud Shell untuk bekerja dengan layanan Azure. Anda dapat menggunakan perintah Cloud Shell yang telah diinstal sebelumnya untuk menjalankan kode dalam artikel ini, tanpa harus menginstal apa pun di lingkungan lokal Anda.

Untuk memulai Azure Cloud Shell:

Opsi Contoh/Tautan
Pilih Coba di sudut kanan atas kode atau blok perintah. Memilih Coba tidak secara otomatis menyalin kode atau perintah ke Cloud Shell. Cuplikan layar yang memperlihatkan contoh fitur Coba Sekarang untuk Azure Cloud Shell.
Kunjungi https://shell.azure.com, atau pilih tombol Luncurkan Cloud Shell untuk membuka Cloud Shell di browser Anda. Tombol untuk meluncurkan Azure Cloud Shell.
Pilih tombol Cloud Shell pada bilah menu di kanan atas di portal Microsoft Azure. Cuplikan layar yang memperlihatkan tombol Cloud Shell di portal Microsoft Azure

Untuk menggunakan Azure Cloud Shell:

  1. Mulai Cloud Shell.

  2. Pilih tombol Salin pada blok kode (atau blok perintah) untuk menyalin kode atau perintah.

  3. Tempelkan kode atau perintah ke sesi Cloud Shell dengan memilih Ctrl+Shift+V di Windows dan Linux, atau dengan memilih Cmd+Shift+V di macOS.

  4. Pilih Enter untuk menjalankan kode atau perintah.

Masuk ke Azure

Untuk masuk ke Azure menggunakan CLI, ketik:

az login

Untuk informasi selengkapnya tentang opsi masuk melalui CLI, lihat masuk dengan Azure CLI

Membuat penetapan peran baru

Tetapkan peran untuk semua kunci

Gunakan az keyvault role assignment create perintah untuk menetapkan peran Pengguna Kripto HSM Terkelola kepada pengguna yang diidentifikasi oleh nama prinsipal pengguna user2@contoso.com untuk semua kunci (cakupan /keys) di ContosoHSM.

az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto User" --assignee user2@contoso.com  --scope /keys

Penugasan peran untuk kunci tertentu

Gunakan az keyvault role assignment create perintah untuk menetapkan peran Pengguna Kripto HSM Terkelola kepada pengguna yang diidentifikasi oleh nama user2@contoso.com prinsipal pengguna untuk kunci tertentu bernama myrsakey.

az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto User" --assignee user2@contoso.com  --scope /keys/myrsakey

Daftar penugasan peran yang sudah ada

Gunakan az keyvault role assignment list untuk mendaftarkan penugasan peran.

Semua penetapan peran pada cakupan (default ketika tidak ada --scope yang ditentukan) untuk semua pengguna (default ketika tidak ada --assignee yang ditentukan)

az keyvault role assignment list --hsm-name ContosoMHSM

Semua penugasan peran di tingkat HSM untuk pengguna tertentu user1@contoso.com.

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user@contoso.com

Nota

Ketika cakupan adalah / (atau /kunci), perintah daftar hanya menampilkan semua penetapan peran di tingkat tertinggi dan tidak menunjukkan penetapan peran pada tingkat kunci individual.

Semua penetapan peran untuk pengguna tertentu user2@contoso.com untuk kunci tertentu myrsakey.

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey

Penetapan peran Managed HSM Crypto Officer yang spesifik untuk pengguna user2@contoso.com tertentu dan untuk kunci tertentu myrsakey

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey --role "Managed HSM Crypto Officer"

Menghapus penetapan peran

Gunakan az keyvault role assignment delete perintah untuk menghapus peran Petugas Kripto HSM Terkelola yang ditetapkan kepada pengguna user2@contoso.com untuk kunci myrsakey2.

az keyvault role assignment delete --hsm-name ContosoMHSM --role "Managed HSM Crypto Officer" --assignee user2@contoso.com  --scope /keys/myrsakey2

Daftar semua definisi peran yang tersedia

Gunakan az keyvault role definition list perintah untuk mendaftarkan semua definisi peran.

az keyvault role definition list --hsm-name ContosoMHSM

Membuat definisi peran baru

Managed HSM memiliki beberapa peran bawaan (yang telah ditentukan sebelumnya) yang berguna untuk skenario penggunaan yang paling umum. Anda dapat menentukan peran Anda sendiri dengan daftar tindakan tertentu yang diizinkan untuk dilakukan oleh peran tersebut. Kemudian Anda dapat menetapkan peran ini kepada prinsipal untuk memberi mereka izin untuk tindakan yang ditentukan.

Gunakan az keyvault role definition create perintah untuk peran bernama Peran Kustom Saya menggunakan string JSON.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
    "roleName": "My Custom Role",
    "description": "The description of the custom rule.",
    "actions": [],
    "notActions": [],
    "dataActions": [
        "Microsoft.KeyVault/managedHsm/keys/read/action"
    ],
    "notDataActions": []
}'

Gunakan az keyvault role definition create perintah untuk peran dari file bernama my-custom-role-definition.json yang berisi string JSON untuk definisi peran. Lihat contoh di atas.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition @my-custom-role-definition.json

Tampilkan detail definisi sebuah peran

Gunakan az keyvault role definition show perintah untuk melihat detail definisi peran tertentu menggunakan nama (GUID).

az keyvault role definition show --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Memperbarui definisi peran kustom

Gunakan az keyvault role definition update perintah untuk memperbarui peran bernama Peran Kustom Saya menggunakan string JSON.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
            "roleName": "My Custom Role",
            "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/xxxxxxxx-
        xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "description": "The description of the custom rule.",
            "actions": [],
            "notActions": [],
            "dataActions": [
                "Microsoft.KeyVault/managedHsm/keys/read/action",
                "Microsoft.KeyVault/managedHsm/keys/write/action",
                "Microsoft.KeyVault/managedHsm/keys/backup/action",
                "Microsoft.KeyVault/managedHsm/keys/create"
            ],
            "notDataActions": []
        }'

Hapus pengaturan peran kustom

Gunakan perintah hapus definisi peran Azure CLI az keyvault untuk menghapus definisi peran kustom menggunakan nama (GUID).

az keyvault role definition delete --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Nota

Peran bawaan tidak dapat dihapus. Saat peran kustom dihapus, semua penetapan peran menggunakan peran kustom tersebut menjadi tidak berfungsi.

Langkah berikutnya