Bagikan melalui


Mengelola HSM Terkelola menggunakan Azure CLI

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.

Untuk gambaran umum HSM Terkelola, lihat Apa itu HSM Terkelola?

Prasyarat

Untuk menyelesaikan langkah-langkah 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' 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

Masuk ke Azure menggunakan CLI dengan mengetik:

az login

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

Nota

Semua perintah berikut menunjukkan dua metode penggunaan. Satu menggunakan --hsm-name parameter dan --name (untuk nama kunci) dan yang lain menggunakan --id parameter di mana Anda dapat menentukan seluruh url termasuk nama kunci jika sesuai. Metode terakhir berguna ketika penelepon (pengguna atau aplikasi) tidak memiliki akses baca pada sarana kontrol dan hanya akses terbatas pada sarana data.

Nota

Beberapa interaksi dengan bahan kunci memerlukan izin Lokal RBAC tertentu. Untuk melihat daftar lengkap peran dan izin bawaan RBAC Lokal, lihat Peran bawaan RBAC lokal HSM terkelola. Untuk menetapkan izin ini kepada pengguna, lihat Mengamankan akses ke HSM terkelola Anda

Membuat kunci HSM

Nota

Kunci yang dihasilkan atau diimpor ke HSM Terkelola tidak dapat diekspor. Satu-satunya pengecualian untuk aturan tanpa ekspor adalah ketika Anda membuat kunci dengan kebijakan rilis kunci tertentu. Kebijakan ini memungkinkan kunci untuk diekspor hanya ke lingkungan komputasi rahasia tepercaya (enklave aman) yang Anda tentukan secara eksplisit. Kemampuan ekspor terbatas ini dirancang untuk skenario komputasi aman tertentu dan tidak sama dengan ekspor kunci tujuan umum. Silakan lihat praktik terbaik yang direkomendasikan untuk menjaga portabilitas dan daya tahan kunci.

Gunakan perintah az keyvault key create untuk membuat kunci.

Membuat kunci RSA

Contoh ini menunjukkan cara membuat kunci RSA 3072-bit yang hanya digunakan untuk operasi wrapKey, unwrapKey (--ops).

az keyvault key create --hsm-name ContosoMHSM --name myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072

## OR
# Note the key name (myrsakey) in the URI

az keyvault key create --id https://ContosoMHSM.managedhsm.azure.net/keys/myrsakey --ops wrapKey unwrapKey --kty RSA-HSM --size 3072

Perhatikan, operasi get hanya mengembalikan kunci publik dan atribut kunci. Ini tidak mengembalikan kunci privat (jika kunci asimetris) atau materi kunci (jika kunci simetris).

Membuat kunci EC

Contoh di bawah ini menunjukkan cara membuat kunci EC dengan kurva P-256 yang hanya akan digunakan untuk operasi tanda tangan dan verifikasi (--ops) dan memiliki dua tag, penggunaan , dan nama aplikasi. Tag membantu Anda menambahkan metadata tambahan ke kunci untuk pelacakan dan pengelolaan.

az keyvault key create --hsm-name ContosoMHSM --name myec256key --ops sign verify  --tags ‘usage=signing] appname=myapp’ --kty EC-HSM --curve P-256

## OR
# Note the key name (myec256key) in the URI

az keyvault key create --id https://ContosoMHSM.managedhsm.azure.net/keys/myec256key --ops sign verify  --tags ‘usage=signing] appname=myapp’ --kty EC-HSM --curve P-256

Membuat kunci simetris 256-bit

Contoh ini menunjukkan cara membuat kunci simetris 256-bit yang hanya akan digunakan untuk operasi mengenkripsi dan mendekripsi (--ops).

az keyvault key create --hsm-name ContosoMHSM --name myaeskey --ops encrypt decrypt  --tags --kty oct-HSM --size 256

## OR
# Note the key name (myaeskey) in the URI

az keyvault key create --id https://ContosoMHSM.managedhsm.azure.net/keys/myaeskey --ops encrypt decrypt  --tags ‘usage=signing] appname=myapp’ --kty oct-HSM --size 256

Melihat atribut dan tag kunci

Gunakan az keyvault key show perintah untuk melihat atribut, versi, dan tag untuk kunci.

az keyvault key show --hsm-name ContosoHSM --name myrsakey

## OR
# Note the key name (myaeskey) in the URI

az keyvault key show --id https://ContosoMHSM.managedhsm.azure.net/keys/myrsakey

Membuat daftar kunci

Gunakan perintah az keyvault key list untuk mencantumkan semua kunci di dalam HSM terkelola.

az keyvault key list --hsm-name ContosoHSM

## OR
# use full URI

az keyvault key list --id https://ContosoMHSM.managedhsm.azure.net/

Menghapus kunci

Gunakan perintah az keyvault key delete untuk menghapus kunci dari HSM terkelola. Penghapusan lunak selalu aktif. Oleh karena itu, kunci yang dihapus tetap dalam status dihapus dan dapat dipulihkan hingga jumlah hari retensi berlalu, di mana kunci dihapus menyeluruh (dihapus secara permanen) tanpa pemulihan yang mungkin.

az keyvault key delete --hsm-name ContosoHSM --name myrsakey

## OR
# Note the key name (myaeskey) in the URI

az keyvault key delete --id https://ContosoMHSM.managedhsm.azure.net/keys/myrsakey

Mendaftarkan kunci yang dihapus

Gunakan perintah az keyvault key list-deleted untuk mendaftar semua kunci dalam status terhapus di HSM terkelola Anda.

az keyvault key list-deleted --hsm-name ContosoHSM

## OR
# use full URI

az keyvault key list-deleted --id https://ContosoMHSM.managedhsm.azure.net/

Memulihkan (membatalkan penghapusan) kunci yang dihapus

Gunakan perintah az keyvault key list-deleted untuk mendaftar semua kunci dalam status terhapus di HSM terkelola Anda. Jika Anda perlu memulihkan (membatalkan penghapusan) kunci menggunakan --id parameter saat memulihkan kunci yang dihapus, Anda harus mencatat recoveryId nilai kunci yang dihapus yang diperoleh dari az keyvault key list-deleted perintah .

az keyvault key recover --hsm-name ContosoHSM --name myrsakey

## OR
# Note the key name (myaeskey) in the URI

az keyvault key recover --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey

Membersihkan kunci (menghapus secara permanen)

Gunakan perintah az keyvault key purge untuk menghapus kunci (menghapus secara permanen).

Nota

Jika perlindungan penghapusan total diaktifkan pada HSM terkelola, operasi penghapusan total tidak diizinkan. Kunci secara otomatis dibersihkan ketika periode retensi telah berlalu.

az keyvault key purge --hsm-name ContosoHSM --name myrsakey

## OR
# Note the key name (myaeskey) in the URI

az keyvault key purge --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey

Membuat cadangan kunci tunggal

Gunakan az keyvault key backup untuk membuat cadangan kunci. File cadangan adalah blob terenkripsi yang terkait secara kriptografis dengan Domain Keamanan HSM sumber. File ini hanya dapat dipulihkan di HSM yang memiliki domain keamanan yang sama. Baca selengkapnya tentang Domain Keamanan.

az keyvault key backup --hsm-name ContosoHSM --name myrsakey --file myrsakey.backup

## OR
# Note the key name (myaeskey) in the URI

az keyvault key backup --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey  --file myrsakey.backup

Memulihkan satu kunci dari cadangan

Gunakan az keyvault key restore untuk memulihkan satu kunci. HSM sumber tempat cadangan dibuat harus memiliki domain keamanan yang sama dengan HSM target tempat kunci dipulihkan.

Nota

Pemulihan tidak akan berhasil jika terdapat kunci dengan nama yang sama dan berstatus aktif atau dihapus.

az keyvault key restore --hsm-name ContosoHSM --name myrsakey --file myrsakey.backup

## OR
# Note the key name (myaeskey) in the URI

az keyvault key restore --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey --file myrsakey.backup

Mengimpor kunci dari file

Gunakan perintah az keyvault key import untuk mengimpor kunci (hanya RSA dan EC) dari file. File sertifikat harus memiliki kunci privat dan harus menggunakan pengodean PEM (seperti yang didefinisikan dalam RFC 1421, 1422, 1423, 1424).

az keyvault key import --hsm-name ContosoHSM --name myrsakey --pem-file mycert.key --pem-password 'mypassword'

## OR
# Note the key name (myaeskey) in the URI

az keyvault key recover --id https://ContosoMHSM.managedhsm.azure.net/deletedKeys/myrsakey --pem-file mycert.key --password 'mypassword'

Untuk mengimpor kunci dari HSM lokal Anda ke HSM terkelola, lihat Mengimpor kunci yang dilindungi HSM ke HSM Terkelola (BYOK)

Langkah berikutnya