Mengelola Key Vault menggunakan antarmuka tingkat panggilan Azure
Artikel ini membahas cara mulai bekerja dengan Azure Key Vault menggunakan antarmuka tingkat panggilan Azure. Anda dapat melihat informasi tentang:
- Cara membuat kontainer yang diperkeras (vault) di Azure
- Menambahkan kunci, rahasia, atau sertifikat ke brankas kunci
- Mendaftarkan aplikasi dengan ID Microsoft Entra
- Mengotorisasi aplikasi untuk menggunakan kunci atau rahasia
- Mengatur kebijakan akses tingkat lanjut brankas kunci
- Bekerja dengan keamanan Perangkat Keras (HSM)
- Menghapus brankas kunci serta kunci dan rahasia terkait
- Perintah Antarmuka Tingkat Panggilan Lintas Platform Azure lainnya
Azure Key Vault tersedia di sebagian besar wilayah. Untuk informasi selengkapnya, lihat halaman Harga Key Vault.
Catatan
Artikel ini tidak menyertakan instruksi tentang cara menulis aplikasi Azure yang disertakan oleh salah satu langkah, yang menunjukkan cara mengotorisasi aplikasi untuk menggunakan kunci atau rahasia di brankas kunci.
Untuk ringkasan Azure Key Vault, lihat Apa itu Azure Key Vault?) Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Prasyarat
Untuk menggunakan perintah Azure CLI dalam artikel ini, Anda harus memiliki item berikut:
- Berlangganan Microsoft Azure. Jika tidak memilikinya, Anda dapat mendaftar untuk uji coba gratis.
- Azure CLI versi 2.0 atau yang lebih baru. Untuk memasang versi terbaru, lihat Memasang antarmuka tingkat panggilan Azure.
- Aplikasi yang akan dikonfigurasi untuk menggunakan kunci atau kata sandi yang Anda buat di artikel ini. Sampel aplikasi tersedia di Pusat Pengunduhan Microsoft. Untuk mengetahui petunjuknya, lihat file Readme yang disertakan.
Mendapatkan bantuan dengan Antarmuka Baris Perintah Lintas Platform Azure
Artikel ini mengasumsikan bahwa Anda terbiasa dengan antarmuka baris perintah (Bash, Terminal, Perintah).
Parameter --bantuan atau -h dapat digunakan untuk melihat bantuan untuk perintah tertentu. Atau, format [perintah] [opsi] bantuan Azure juga dapat digunakan. Jika ragu tentang parameter yang diperlukan oleh perintah, lihat bantuan. Misalnya, perintah berikut semuanya memberikan informasi yang sama:
az account set --help
az account set -h
Anda juga dapat membaca artikel berikut untuk mengenali Azure Resource Manager di Antarmuka Baris Perintah Lintas Platform Azure:
Cara membuat kontainer yang diperkeras (vault) di Azure
Brankas adalah kontainer aman yang didukung oleh modul keamanan perangkat keras. Brankas membantu mengurangi kemungkinan hilangnya informasi keamanan secara tidak disengaja dengan memusatkan penyimpanan rahasia aplikasi. Key Vault juga mengontrol dan mencatat akses ke apa pun yang tersimpan di dalamnya. Azure Key Vault dapat menangani permintaan dan perpanjangan sertifikat Keamanan Lapisan Transportasi (TLS), menyediakan fitur yang diperlukan untuk solusi manajemen siklus hidup sertifikat yang kuat. Pada langkah berikutnya, Anda akan membuat brankas.
Menyambungkan ke langganan Anda
Untuk masuk secara interaktif, gunakan perintah berikut:
az login
Untuk masuk menggunakan akun organisasi, Anda dapat memberikan nama pengguna dan kata sandi Anda.
az login -u username@domain.com -p password
Jika Anda memiliki lebih dari satu langganan dan perlu menentukan langganan mana yang akan digunakan, ketik yang berikut ini untuk melihat langganan untuk akun Anda:
az account list
Tentukan langganan dengan parameter langganan.
az account set --subscription <subscription name or ID>
Untuk informasi selengkapnya tentang mengonfigurasi Antarmuka Baris Perintah Lintas Platform Azure, lihat Memasang antarmuka tingkat panggilan Azure.
Membuat grup sumber daya baru
Saat menggunakan Azure Resource Manager, semua sumber daya terkait dibuat di dalam grup sumber daya. Anda dapat membuat brankas kunci di grup sumber daya yang ada. Jika Anda ingin menggunakan grup sumber daya baru, Anda bisa membuat yang baru.
az group create -n "ContosoResourceGroup" -l "East Asia"
Parameter pertama adalah nama grup sumber daya dan parameter kedua adalah lokasi. Untuk mendapatkan daftar semua tipe lokasi yang mungkin:
az account list-locations
Daftarkan penyedia sumber daya Key Vault
Anda mungkin melihat kesalahan "Langganan tidak terdaftar untuk menggunakan namespace 'Microsoft.KeyVault'" ketika Anda mencoba membuat brankas kunci baru. Jika pesan tersebut muncul, pastikan penyedia sumber daya Key Vault terdaftar di langganan Anda. Ini adalah operasi satu kali untuk setiap langganan.
az provider register -n Microsoft.KeyVault
Buat brankas kunci
Gunakan az keyvault create
perintah untuk membuat brankas kunci. Skrip ini memiliki tiga parameter wajib: nama grup sumber daya, nama brankas kunci, dan lokasi geografis.
Untuk membuat vault baru dengan nama ContosoKeyVault, di grup sumber daya ContosoResourceGroup, yang berada di lokasi Asia Timur, ketik:
az keyvault create --name "ContosoKeyVault" --resource-group "ContosoResourceGroup" --location "East Asia"
Output dari perintah ini menunjukkan properti brankas kunci yang telah Anda buat. Dua properti yang paling penting adalah:
- nama: Dalam contoh, nama adalah ContosoKeyVault. Anda akan menggunakan nama ini untuk perintah Key Vault lainnya.
- vaultUri: Dalam contoh, URI adalah
https://contosokeyvault.vault.azure.net
. Aplikasi yang menggunakan brankas Anda melalui REST API-nya harus menggunakan URI ini.
Akun Azure Anda sekarang diotorisasi untuk melakukan operasi apa pun pada brankas kunci ini. Sampai saat ini, tidak ada orang lain yang diotorisasi.
Menambahkan kunci, rahasia, atau sertifikat ke brankas kunci
Jika Anda ingin Azure Key Vault membuat kunci yang dilindungi perangkat lunak untuk Anda, gunakan perintah az key create
tersebut.
az keyvault key create --vault-name "ContosoKeyVault" --name "ContosoFirstKey" --protection software
Jika memiliki kunci yang sudah ada dalam file .pem, Anda dapat mengunggahnya ke Azure Key Vault. Anda dapat memilih untuk melindungi kunci dengan perangkat lunak atau HSM. Contoh ini mengimpor kunci dari file .pem dan melindunginya dengan perangkat lunak, menggunakan kata sandi "hVFkk965BuUv":
az keyvault key import --vault-name "ContosoKeyVault" --name "ContosoFirstKey" --pem-file "./softkey.pem" --pem-password "hVFkk965BuUv" --protection software
Sekarang Anda dapat mereferensikan kunci yang Anda buat atau unggah ke Azure Key Vault, dengan menggunakan URI-nya. Gunakan https://ContosoKeyVault.vault.azure.net/keys/ContosoFirstKey
untuk selalu mendapatkan versi saat ini. Gunakan https://<keyvault-name>.vault.azure.net/keys/<keyname>/<key-unique-id>
untuk mendapatkan versi khusus ini. Contohnya,https://ContosoKeyVault.vault.azure.net/keys/ContosoFirstKey/cgacf4f763ar42ffb0a1gca546aygd87
.
Tambahkan rahasia ke brankas, yang merupakan kata sandi bernama SQLPassword, dan memiliki nilai "hVFkk965BuUv" ke Azure Key Vaults.
az keyvault secret set --vault-name "ContosoKeyVault" --name "SQLPassword" --value "hVFkk965BuUv "
Referensikan kata sandi ini dengan menggunakan URI-nya. Gunakan https://ContosoVault.vault.azure.net/secrets/SQLPassword untuk selalu mendapatkan versi saat ini, dan https://<keyvault-name>.vault.azure.net/secret/<secret-name>/<secret-unique-id>
untuk mendapatkan versi spesifik ini. Contohnya,https://ContosoVault.vault.azure.net/secrets/SQLPassword/90018dbb96a84117a0d2847ef8e7189d
.
Impor sertifikat ke brankas menggunakan .pem atau .pfx.
az keyvault certificate import --vault-name "ContosoKeyVault" --file "c:\cert\cert.pfx" --name "ContosoCert" --password "hVFkk965BuUv"
Mari kita lihat kunci, rahasia, atau sertifikat yang Anda buat:
- Untuk melihat kunci Anda, ketik:
az keyvault key list --vault-name "ContosoKeyVault"
- Untuk melihat rahasia Anda, ketik:
az keyvault secret list --vault-name "ContosoKeyVault"
- Untuk melihat sertifikat, ketik:
az keyvault certificate list --vault-name "ContosoKeyVault"
Mendaftarkan aplikasi dengan ID Microsoft Entra
Langkah ini biasanya akan dilakukan oleh pengembang pada komputer terpisah. Ini tidak spesifik untuk Azure Key Vault tetapi disertakan di sini agar Anda mengetahuinya. Untuk menyelesaikan pendaftaran aplikasi, akun Anda, brankas, dan aplikasi harus berada di direktori Azure yang sama.
Aplikasi yang menggunakan brankas kunci harus mengautentikasi dengan menggunakan token dari ID Microsoft Entra. Pemilik aplikasi harus mendaftarkannya di Microsoft Entra terlebih dahulu. Pada akhir pendaftaran, pemilik aplikasi mendapatkan nilai berikut:
- ID Aplikasi (juga dikenal sebagai ID Klien Microsoft Entra atau appID)
- Kunci autentikasi (juga dikenal sebagai rahasia bersama).
Aplikasi harus menyajikan kedua nilai ini ke MICROSOFT Entra ID, untuk mendapatkan token. Bagaimana aplikasi dikonfigurasi untuk mendapatkan token akan bergantung pada aplikasi. Untuk aplikasi sampel Key Vault, pemilik aplikasi mengatur nilai-nilai ini di file app.config.
Untuk langkah-langkah terperinci tentang mendaftarkan aplikasi dengan ID Microsoft Entra, Anda harus meninjau artikel berjudul Mengintegrasikan aplikasi dengan ID Microsoft Entra, Gunakan portal untuk membuat aplikasi Microsoft Entra dan perwakilan layanan yang dapat mengakses sumber daya, dan Membuat perwakilan layanan Azure dengan Azure CLI.
Untuk mendaftarkan aplikasi di ID Microsoft Entra:
az ad sp create-for-rbac -n "MyApp" --password "hVFkk965BuUv" --role Contributor --scopes /subscriptions/<subscription id>
# If you don't specify a password, one will be created for you.
Mengotorisasi aplikasi untuk menggunakan kunci atau rahasia
Untuk mengotorisasi aplikasi untuk mengakses kunci atau rahasia di brankas, gunakan perintah az keyvault set-policy
.
Misalnya, jika nama vault Anda adalah ContosoKeyVault dan Anda ingin mengotorisasi aplikasi untuk mendekripsi dan menandatangani dengan kunci di vault Anda, gunakan perintah berikut dengan ID aplikasi Anda:
az keyvault set-policy --name "ContosoKeyVault" --spn {application-id} --key-permissions decrypt sign
Untuk mengotorisasi aplikasi yang sama agar membaca rahasia di brankas Anda, ketik perintah berikut:
az keyvault set-policy --name "ContosoKeyVault" --spn {application-id} --secret-permissions get
Mengatur kebijakan akses tingkat lanjut brankas kunci
Menggunakan perbarui az keyvault untuk mengaktifkan kebijakan lanjutan untuk brankas kunci.
Aktifkan Key Vault untuk penyebaran: Memungkinkan komputer virtual untuk mengambil sertifikat yang disimpan sebagai rahasia dari brankas.
az keyvault update --name "ContosoKeyVault" --resource-group "ContosoResourceGroup" --enabled-for-deployment "true"
Aktifkan Key Vault untuk enkripsi disk: Diperlukan saat menggunakan brankas untuk enkripsi Azure Disk.
az keyvault update --name "ContosoKeyVault" --resource-group "ContosoResourceGroup" --enabled-for-disk-encryption "true"
Aktifkan Key Vault untuk penyebaran templat: Memungkinkan Resource Manager untuk mengambil rahasia dari brankas.
az keyvault update --name "ContosoKeyVault" --resource-group "ContosoResourceGroup" --enabled-for-template-deployment "true"
Bekerja dengan keamanan Perangkat Keras (HSM)
Untuk jaminan tambahan, Anda dapat mengimpor atau menghasilkan kunci dari modul keamanan perangkat keras (HSM) yang tidak pernah meninggalkan batas HSM. HSM divalidasi FIPS 140. Jika persyaratan ini tidak berlaku untuk Anda, lewati bagian ini dan buka Hapus brankas kunci serta kunci dan rahasia terkait.
Untuk membuat kunci yang dilindungi HSM ini, Anda harus memiliki langganan brankas yang mendukung kunci yang dilindungi HSM.
Saat Anda membuat keyvault, tambahkan parameter 'sku':
az keyvault create --name "ContosoKeyVaultHSM" --resource-group "ContosoResourceGroup" --location "East Asia" --sku "Premium"
Anda dapat menambahkan kunci yang dilindungi perangkat lunak (seperti yang ditunjukkan sebelumnya) dan kunci yang dilindungi HSM ke brankas ini. Untuk membuat kunci yang dilindungi HSM, atur parameter Tujuan menjadi 'HSM':
az keyvault key create --vault-name "ContosoKeyVaultHSM" --name "ContosoFirstHSMKey" --protection "hsm"
Anda bisa menggunakan perintah berikut untuk mengimpor kunci dari file .pem di komputer Anda. Perintah ini mengimpor kunci ke dalam HSM di layanan Key Vault:
az keyvault key import --vault-name "ContosoKeyVaultHSM" --name "ContosoFirstHSMKey" --pem-file "/.softkey.pem" --protection "hsm" --pem-password "PaSSWORD"
Perintah berikutnya mengimpor paket "bawa kunci Anda sendiri" (BYOK). Ini memungkinkan Anda menghasilkan kunci di HSM lokal, dan mentransfernya ke HSM dalam layanan Key Vault dan kunci tidak meninggalkan batas HSM:
az keyvault key import --vault-name "ContosoKeyVaultHSM" --name "ContosoFirstHSMKey" --byok-file "./ITByok.byok" --protection "hsm"
Untuk instruksi lebih terperinci tentang cara menghasilkan paket BYOK ini, lihat Cara menggunakan Kunci yang Dilindungi HSM dengan Azure Key Vault.
Menghapus brankas kunci serta kunci dan rahasia terkait
Jika tidak memerlukan lagi brankas kunci dan kunci atau rahasianya, Anda dapat menghapus brankas kunci dengan menggunakan perintah az keyvault delete
:
az keyvault delete --name "ContosoKeyVault"
Atau, Anda dapat menghapus seluruh grup sumber daya Azure, yang menyertakan brankas kunci dan sumber daya lain yang Anda sertakan dalam grup tersebut:
az group delete --name "ContosoResourceGroup"
Perintah Antarmuka Tingkat Panggilan Lintas Platform Azure lainnya
Perintah lain yang mungkin berguna bagi Anda untuk mengelola Azure Key Vault.
Perintah ini mencantumkan tampilan tabel semua kunci dan properti yang dipilih:
az keyvault key list --vault-name "ContosoKeyVault"
Perintah ini menampilkan daftar lengkap properti untuk kunci yang ditentukan:
az keyvault key show --vault-name "ContosoKeyVault" --name "ContosoFirstKey"
Perintah ini mencantumkan tampilan tabel semua nama rahasia dan properti yang dipilih:
az keyvault secret list --vault-name "ContosoKeyVault"
Berikut adalah contoh cara menghapus kunci tertentu:
az keyvault key delete --vault-name "ContosoKeyVault" --name "ContosoFirstKey"
Berikut adalah contoh cara menghapus rahasia tertentu:
az keyvault secret delete --vault-name "ContosoKeyVault" --name "SQLPassword"
Langkah berikutnya
Untuk referensi antarmuka tingkat panggilan Azure lengkap mengenai perintah brankas kunci, lihat Referensi Key Vault CLI.
Untuk referensi pemrograman, lihat panduan pengembang Azure Key Vault
Untuk informasi tentang Azure Key Vault dan HSM, lihat Cara menggunakan Kunci yang Dilindungi HSM dengan Azure Key Vault.