Bagikan melalui


panduan pengembang Azure Key Vault

Azure Key Vault adalah layanan cloud yang menyediakan penyimpanan dan manajemen kunci kriptografi, rahasia, dan sertifikat yang aman. Panduan ini membantu pengembang mengintegrasikan Key Vault ke dalam aplikasi mereka.

Gambaran Umum

Azure Key Vault memungkinkan Anda untuk:

  • Penyimpanan aman: Melindungi kunci, rahasia, dan sertifikat tanpa menulis kode keamanan kustom.
  • Manajemen kunci yang disederhanakan: Mempusatkan operasi kriptografi dan manajemen siklus hidup utama.
  • Kunci milik pelanggan: Memungkinkan pelanggan mengelola kunci mereka sendiri saat Anda fokus pada fitur aplikasi inti.
  • Manajemen kunci eksternal: Gunakan kunci untuk penandatanganan dan enkripsi sambil menyimpannya di luar aplikasi Anda.

Untuk informasi umum tentang Azure Key Vault, lihat Tentang Azure Key Vault.

Skenario pengembang

Tugas pengembang umum dengan Key Vault meliputi:

  • Menyimpan dan mengambil rahasia: Mengelola string koneksi, kata sandi, kunci API, dan token SAS dengan aman. Untuk informasi lebih lanjut, lihat Tentang rahasia.
  • Gunakan kunci untuk enkripsi dan penandatanganan: Lakukan operasi kriptografi tanpa mengekspos materi kunci ke aplikasi Anda. Untuk informasi lebih lanjut, lihat Tentang kunci.
  • Mengelola sertifikat: Mengotomatiskan provisi sertifikat, perpanjangan, dan penyebaran untuk SSL/TLS. Untuk informasi lebih lanjut, lihat Tentang sertifikat.

Pratinjau publik

Microsoft secara berkala merilis pratinjau publik fitur Key Vault baru. Untuk mencoba fitur pratinjau dan memberikan umpan balik, hubungi tim di azurekeyvault@microsoft.com. Untuk informasi tentang fitur dan pembaruan terbaru, lihat Yang baru di Azure Key Vault.

Membuat dan mengelola brankas penyimpan kunci

Key Vault menggunakan model akses dua lapisan:

Gunakan peran kontributor Key Vault yang telah ditentukan sebelumnya untuk memberikan akses manajemen ke sumber daya Key Vault. Untuk informasi selengkapnya tentang autentikasi dan otorisasi, lihat Authentication di Azure Key Vault.

Keamanan jaringan

Kurangi paparan jaringan dengan mengonfigurasi titik akhir privat, firewall, atau titik akhir layanan. Untuk panduan keamanan jaringan komprehensif termasuk opsi konfigurasi dari yang paling hingga paling tidak ketat, lihat Mengamankan Azure Key Vault Anda: Keamanan Jaringan dan Konfigurasi pengaturan jaringan Azure Key Vault.

API dan SDK untuk manajemen brankas kunci

Tabel berikut mencantumkan SDK dan panduan memulai cepat untuk mengelola sumber daya Key Vault (operasi kendali). Untuk versi terbaru dan instruksi penginstalan, lihat Pustaka klien.

Azure CLI PowerShell REST API Pengelola Sumber Daya .NET Python Java JavaScript
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi Referensi
Mulai Cepat
Referensi Referensi Referensi Referensi

Mengautentikasi ke Key Vault dalam kode

Key Vault menggunakan autentikasi Microsoft Entra, yang memerlukan prinsip keamanan Microsoft Entra untuk memberikan akses. Prinsipal keamanan Microsoft Entra dapat berupa pengguna, perwakilan layanan aplikasi, identitas terkelola untuk sumber daya Azure, atau sekelompok jenis ini.

Praktik autentikasi terbaik

Untuk aplikasi yang disebarkan ke Azure, gunakan identitas terkelola untuk menghilangkan kebutuhan untuk menyimpan kredensial dalam kode. Untuk panduan autentikasi terperinci dan rekomendasi prinsip keamanan untuk lingkungan yang berbeda (produksi, pengembangan, lokal), lihat Autentikasi di Azure Key Vault dan Amankan Azure Key Vault Anda.

pustaka klien identitas Azure

Skenario autentikasi sebelumnya didukung oleh pustaka klien Azure Identity dan terintegrasi dengan SDK Key Vault. Anda dapat menggunakan pustaka klien Azure Identity di seluruh lingkungan dan platform tanpa mengubah kode Anda. Pustaka secara otomatis mengambil token autentikasi dari pengguna yang telah masuk ke Azure melalui Azure CLI, Visual Studio, Visual Studio Code, dan metode lainnya.

Untuk informasi selengkapnya tentang pustaka klien Azure Identity, lihat:

.NET Python Java JavaScript
Azure Identity SDK .NET Azure Identity SDK Python Azure Identity SDK Java Azure Identity SDK JavaScript

Nota

Kami merekomendasikan pustaka App Authentication untuk Key Vault .NET SDK versi 3, tetapi sekarang tidak digunakan lagi. Untuk bermigrasi ke Key Vault .NET SDK versi 4, ikuti panduan migrasi AppAuthentication ke Azure.Identity.

Untuk tutorial tentang cara mengautentikasi ke Key Vault dalam aplikasi, lihat:

Mengelola kunci, sertifikat, dan rahasia

Nota

SDK untuk .NET, Python, Java, JavaScript, PowerShell, dan Azure CLI adalah bagian dari proses rilis fitur Key Vault melalui pratinjau publik dan ketersediaan umum dengan dukungan tim layanan Key Vault. Klien SDK lain untuk Key Vault tersedia, tetapi mereka dibangun dan didukung oleh tim SDK individual melalui GitHub dan dirilis dalam jadwal tim mereka. Untuk versi SDK terbaru dan paket penginstalan, lihat Pustaka klien.

Data plane mengendalikan akses ke kunci, sertifikat, dan informasi rahasia. Anda dapat menggunakan Azure RBAC dengan Key Vault untuk kontrol akses melalui bidang data.

API dan SDK untuk kunci

Tabel berikut mencantumkan SDK dan panduan cepat untuk menggunakan kunci (operasi lintasan data). Untuk informasi selengkapnya tentang kunci, lihat Tentang kunci.

Azure CLI PowerShell REST API Pengelola Sumber Daya .NET Python Java JavaScript
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat

Pustaka Lain

Klien kriptografi untuk Key Vault dan HSM Terkelola

Modul ini menyediakan klien kriptografi untuk modul klien Azure Key Vault Keys untuk Go.

Nota

Proyek ini tidak didukung oleh tim Azure SDK, tetapi selaras dengan klien kriptografi dalam bahasa lain yang didukung.

Bahasa Referensi
Ayo pergi Referensi

API dan SDK untuk sertifikat

Tabel berikut mencantumkan SDK dan panduan memulai cepat untuk bekerja dengan sertifikat (operasi bidang data). Untuk informasi selengkapnya tentang sertifikat, lihat Tentang sertifikat.

Azure CLI PowerShell REST API Pengelola Sumber Daya .NET Python Java JavaScript
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi Tidak tersedia Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat

API dan SDK untuk pengelolaan rahasia

Tabel berikut mencantumkan SDK dan panduan cepat untuk bekerja dengan informasi sensitif (operasi bidang data). Untuk informasi selengkapnya tentang rahasia, lihat Tentang rahasia.

Azure CLI PowerShell REST API Pengelola Sumber Daya .NET Python Java JavaScript
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat
Referensi
Mulai Cepat

Penggunaan rahasia

Gunakan Azure Key Vault untuk hanya menyimpan rahasia untuk aplikasi Anda. Contoh rahasia yang harus disimpan di Key Vault meliputi:

  • Rahasia aplikasi klien
  • String sambungan
  • Kata Sandi
  • Kunci akses bersama
  • Kunci SSH

Informasi terkait rahasia apa pun, seperti nama pengguna dan ID aplikasi, dapat disimpan sebagai tag dalam rahasia. Untuk pengaturan konfigurasi sensitif lainnya, Anda harus menggunakan Azure App Configuration.

Untuk paket penginstalan dan kode sumber, lihat Pustaka klien.

Menggunakan Key Vault dalam aplikasi

Untuk memanfaatkan fitur terbaru dalam Key Vault, kami sarankan Anda menggunakan SDK Key Vault yang tersedia untuk menggunakan rahasia, sertifikat, dan kunci dalam aplikasi Anda. SDK Key Vault dan REST API diperbarui saat fitur baru dirilis untuk produk, dan mereka mengikuti praktik dan panduan terbaik.

Untuk skenario dasar, ada pustaka lain dan solusi integrasi untuk penggunaan yang disederhanakan, dengan dukungan yang diberikan oleh mitra Microsoft atau komunitas sumber terbuka.

Untuk sertifikat, Anda dapat menggunakan:

Untuk rahasia, Anda dapat menggunakan:

Contoh kode

Untuk contoh lengkap penggunaan Key Vault dengan aplikasi, lihat sampel kode Azure Key Vault.

Panduan khusus tugas

Artikel dan skenario berikut ini menyediakan panduan khusus tugas untuk bekerja dengan Azure Key Vault:

Integrasi dengan Key Vault

Layanan dan skenario berikut menggunakan atau berintegrasi dengan Key Vault:

  • Enkripsi saat tidak aktif memungkinkan pengodean (enkripsi) data saat disimpan. Kunci enkripsi data sering dienkripsi dengan kunci enkripsi kunci dalam Azure Key Vault untuk membatasi akses lebih lanjut.
  • Perlindungan Informasi Azure memungkinkan Anda mengelola kunci penyewa Anda sendiri. Misalnya, alih-alih Microsoft mengelola kunci penyewa Anda (default), Anda dapat mengelola kunci penyewa Anda sendiri untuk mematuhi peraturan tertentu yang berlaku untuk organisasi Anda. Mengelola kunci penyewa Anda sendiri juga disebut bawa kunci Anda sendiri (BYOK).
  • Azure Private Link memungkinkan Anda mengakses layanan Azure (misalnya, Azure Key Vault, Azure Storage, dan Azure Cosmos DB) dan layanan pelanggan/mitra yang dihosting Azure melalui titik akhir privat di virtual Anda Jaringan.
  • Key Vault integrasi dengan Azure Event Grid memungkinkan pengguna untuk diberi tahu ketika status rahasia yang disimpan di Key Vault telah berubah. Anda dapat mendistribusikan versi rahasia baru ke aplikasi atau memutar rahasia yang hampir kedaluwarsa untuk mencegah pemadaman.
  • Lindungi rahasia Azure DevOps Anda dari akses yang tidak diinginkan di Key Vault.
  • Gunakan rahasia yang disimpan di Key Vault untuk sambungkan ke Azure Storage dari Azure Databricks.
  • Konfigurasikan dan jalankan penyedia Azure Key Vault untuk driver CSI Secrets Store di Kubernetes.

Pemulihan bencana dan keberlangsungan bisnis

Key Vault menyediakan pemulihan bencana bawaan dengan replikasi regional otomatis. Untuk penyebaran produksi, aktifkan "soft delete" dan perlindungan penghapusan menyeluruh, dan terapkan pencadangan secara berkala. Untuk informasi selengkapnya, lihat ketersediaan dan redundansi Azure Key Vault, pemulihan manajemen Azure Key Vault, dan Azure Key Vault pencadangan.

Performa dan skalabilitas

Saat mengembangkan aplikasi yang menggunakan Key Vault, pertimbangkan praktik terbaik performa dan skalabilitas berikut:

  • Batas Service: Key Vault memiliki batas layanan untuk transaksi per vault per wilayah. Melebihi batas ini akan mengakibatkan pembatasan laju. Untuk informasi selengkapnya, lihat batas layanan Azure Key Vault.
  • Panduan pembatasan: Terapkan mekanisme percobaan ulang dengan backoff eksponensial untuk menangani respons pembatasan. Untuk informasi selengkapnya, lihat panduan pembatasan Azure Key Vault.
  • Caching: Rahasia dan sertifikat cache di aplikasi Anda untuk mengurangi panggilan ke Key Vault dan meningkatkan performa.
  • Pengaturan koneksi: Gunakan kembali koneksi HTTP untuk Key Vault jika memungkinkan untuk mengurangi latensi dan meningkatkan performa.

Pemantauan dan pencatatan

Aktifkan pengelogan dan pemantauan untuk keamanan, kepatuhan, dan pemecahan masalah. Konfigurasikan pengaturan diagnostik, pemberitahuan Event Grid, dan pemberitahuan untuk peristiwa penting. Untuk panduan terperinci, lihat Monitor Azure Key Vault, pengelogan Azure Key Vault, Monitoring Key Vault dengan Azure Event Grid, dan Simpan Azure Key Vault Anda: Pengelogan dan Deteksi Ancaman.

Parameter umum dan pola permintaan

Saat bekerja dengan REST API Key Vault, memahami parameter umum dan pola permintaan/respons sangat membantu:

  • API versi: Key Vault menggunakan API versi. Selalu tentukan versi API dalam permintaan Anda.
  • Permintaan autentikasi: Memahami bagaimana token autentikasi diperoleh dan digunakan, termasuk header permintaan umum dan format respons. Untuk informasi selengkapnya, lihat Autentikasi, permintaan, dan respons.
  • Kode kesalahan: Biasakan diri Anda dengan kode kesalahan REST API umum untuk menangani kegagalan dengan anggun. Untuk informasi selengkapnya, lihat kode kesalahan REST API Azure Key Vault.

Troubleshooting

Untuk bantuan mengatasi masalah umum:

  • Kesalahan akses ditolak: Verifikasi kredensial autentikasi Anda dan pastikan entitas keamanan Anda memiliki izin yang diperlukan melalui penetapan RBAC. Lihat Azure RBAC untuk operasi bidang data Key Vault.
  • Konektivitas Jaringan: Jika Mengakses Key Vault dari belakang firewall, pastikan endpoint yang diperlukan dapat diakses. Lihat Mengakses Key Vault di belakang firewall.
  • Pembatasan: Jika menerima respons 429 (Terlalu Banyak Permintaan), terapkan penurunan bertahap secara eksponensial. Lihat panduan pembatasan Azure Key Vault.

Praktik terbaik keamanan

Untuk panduan keamanan komprehensif termasuk manajemen identitas dan akses, perlindungan data, kepatuhan, tata kelola, dan strategi pencadangan, lihat Mengamankan Azure Key Vault.

Sumber daya tambahan

Konsep Key Vault

Manajemen dan operasi

Komunitas dan dukungan