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.
Azure Key Vault Managed HSM adalah layanan cloud yang dikelola sepenuhnya, sangat tersedia, penyewa tunggal, sesuai standar yang memungkinkan Anda melindungi kunci kriptografi untuk aplikasi cloud Anda menggunakan HSM tervalidasi FIPS 140-2 Level 3. Jika Anda ingin mengetahui lebih lanjut tentang Azure Key Vault Managed HSM, Anda mungkin ingin meninjau: Apa itu Azure Key Vault Managed HSM?
Paket @azure/keyvault-admin menyediakan dukungan untuk tugas Key Vault administratif seperti pencadangan/pemulihan penuh dan kontrol akses berbasis peran tingkat kunci (RBAC).
Catatan: Pustaka Administrasi hanya berfungsi dengan HSM Terkelola Azure Key Vault - fungsi yang menargetkan Key Vault akan gagal.
Catatan: Paket ini tidak dapat digunakan di browser karena keterbatasan layanan Azure Key Vault, silakan lihat dokumen ini untuk panduan.
Tautan kunci:
- Kode sumber
- Paket (npm)
- Dokumentasi Referensi API
- dokumentasi produk
- Sampel
Memulai Langkah Pertama
Pasang paketnya
Instal pustaka klien administrasi Azure Key Vault untuk JavaScript dan TypeScript dengan NPM:
npm install @azure/keyvault-admin
Mengonfigurasi TypeScript
Pengguna TypeScript harus menginstal definisi jenis Node:
npm install @types/node
Anda juga perlu mengaktifkan compilerOptions.allowSyntheticDefaultImports di tsconfig.jsonAnda. Perhatikan bahwa jika Anda telah mengaktifkan compilerOptions.esModuleInterop, allowSyntheticDefaultImports diaktifkan secara default. Lihat opsi kompilator TypeScript
Lingkungan yang didukung saat ini
Prasyarat
- langganan Azure
- HSM Terkelola Key Vaultyang ada. Jika Anda perlu membuat HSM Terkelola, Anda dapat melakukannya menggunakan Azure CLI dengan mengikuti langkah-langkah dalam dokumen ini.
Mengautentikasi klien
Untuk berinteraksi dengan layanan Azure Key Vault, Anda harus membuat instans kelas KeyVaultAccessControlClient atau kelas KeyVaultBackupClient, serta url vault (yang mungkin Anda lihat sebagai "Nama DNS" di Portal Microsoft Azure) dan objek kredensial. Contoh yang ditunjukkan dalam dokumen ini menggunakan objek kredensial bernama DefaultAzureCredential, yang sesuai untuk sebagian besar skenario, termasuk lingkungan pengembangan dan produksi lokal. Selain itu, sebaiknya gunakan identitas terkelola
Anda dapat menemukan informasi selengkapnya tentang berbagai cara untuk mengautentikasi dan jenis kredensial yang sesuai dalam dokumentasi Azure Identity.
Membuat KeyVaultAccessControlClient
Setelah mengautentikasi dengan metode autentikasi yang paling sesuai denganAnda, Anda dapat membuat KeyVaultAccessControlClient sebagai berikut, mengganti url HSM Terkelola Anda di konstruktor:
import { DefaultAzureCredential } from "@azure/identity";
import { KeyVaultAccessControlClient } from "@azure/keyvault-admin";
const vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;
const credentials = new DefaultAzureCredential();
const client = new KeyVaultAccessControlClient(vaultUrl, credentials);
Membuat KeyVaultBackupClient
Setelah mengautentikasi dengan metode autentikasi yang paling sesuai denganAnda, Anda dapat membuat KeyVaultBackupClient sebagai berikut, mengganti url HSM Terkelola Anda di konstruktor:
import { DefaultAzureCredential } from "@azure/identity";
import { KeyVaultBackupClient } from "@azure/keyvault-admin";
const vaultUrl = `https://<MY KEY VAULT HERE>.vault.azure.net`;
const credentials = new DefaultAzureCredential();
const client = new KeyVaultBackupClient(vaultUrl, credentials);
Konsep utama
Definisi Peran KeyVault
Definisi Peran adalah kumpulan izin. Definisi peran menentukan operasi yang dapat dilakukan, seperti membaca, menulis, dan menghapus. Ini juga dapat menentukan operasi yang dikecualikan dari operasi yang diizinkan.
Definisi peran dapat dicantumkan dan ditentukan sebagai bagian dari KeyVaultRoleAssignment.
KeyVaultRoleAssignment
Penetapan Peran adalah asosiasi Definisi Peran ke perwakilan layanan. Mereka dapat dibuat, dicantumkan, diambil secara individual, dan dihapus.
KeyVaultAccessControlClient
KeyVaultAccessControlClient menyediakan operasi yang memungkinkan manajemen Definisi Peran (instans KeyVaultRoleDefinition) dan Penetapan Peran (instans KeyVaultRoleAssignment).
KeyVaultBackupClient
KeyVaultBackupClient menyediakan operasi untuk melakukan pencadangan kunci penuh, pemulihan kunci penuh, dan pemulihan kunci selektif.
Operasi yang memerlukan waktu lama
Operasi yang dilakukan oleh KeyVaultBackupClient mungkin memakan waktu sebanyak yang diperlukan oleh sumber daya Azure, mengharuskan lapisan klien untuk melacak, menserialisasikan, dan melanjutkan operasi melalui siklus hidup program yang menunggu mereka selesai. Ini dilakukan melalui abstraksi umum melalui paket @azure/core-lro.
KeyVaultBackupClient menawarkan tiga metode yang menjalankan operasi jangka panjang:
-
beginBackup, mulai menghasilkan cadangan Azure Key Vault Managed HSM pada akun Storage Blob yang ditentukan. -
beginRestore, mulai memulihkan semua materi utama menggunakan token SAS yang menunjuk ke folder cadangan penyimpanan Azure Blob yang disimpan sebelumnya. -
beginSelectiveRestore, mulai memulihkan semua versi kunci kunci tertentu menggunakan token SAS yang disediakan pengguna yang menunjuk ke folder cadangan penyimpanan Azure Blob yang disimpan sebelumnya.
Metode yang memulai operasi jangka panjang mengembalikan poller yang memungkinkan Anda untuk menunggu tanpa batas waktu hingga operasi selesai. Informasi lebih lanjut tersedia dalam contoh di bawah ini.
Contoh
Kami memiliki sampel baik di JavaScript maupun TypeScript yang menampilkan kontrol akses dan fitur pencadangan/pemulihan dalam paket ini. Silakan ikuti readme yang sesuai untuk langkah-langkah terperinci untuk menjalankan sampel.
Penyelesaian Masalah
Lihat panduan pemecahan masalah kami untuk detail tentang cara mendiagnosis berbagai skenario kegagalan.
Mengaktifkan pengelogan dapat membantu menemukan informasi yang berguna tentang kegagalan. Untuk melihat log permintaan dan respons HTTP, atur variabel lingkungan AZURE_LOG_LEVEL ke info. Atau, pengelogan dapat diaktifkan saat runtime dengan memanggil setLogLevel di @azure/logger:
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
Langkah selanjutnya
Anda dapat menemukan lebih banyak sampel kode melalui tautan berikut:
- Sampel Administrasi Key Vault (JavaScript)
- Sampel Administrasi Key Vault (TypeScript)
- Kasus Pengujian Administrasi Key Vault
Berpartisipasi
Jika Anda ingin berkontribusi pada pustaka ini, baca panduan berkontribusi untuk mempelajari selengkapnya tentang cara membuat dan menguji kode.
Azure SDK for JavaScript