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.
Rahasia tingkat aplikasi adalah nilai konfigurasi yang digunakan oleh kode fungsi dan pengikatan Anda saat waktu berjalan. Tidak seperti kunci akses Functions, yang mengamankan titik akhir HTTP, rahasia aplikasi adalah kredensial yang dibutuhkan aplikasi Anda untuk terhubung ke layanan lain.
Contoh umumnya termasuk:
- Koneksi infrastruktur, string sambungan, pemicu, dan koneksi pengikatan untuk Azure Event Hubs, Bus Layanan, Cosmos DB, dan SQL.
- Info masuk bisnis - kunci API pihak ketiga, kata sandi database, token platform SaaS.
- Konfigurasi kustom - nilai sensitif apa pun yang dibaca kode Anda dari variabel lingkungan.
Pilih opsi penyimpanan
Azure Container Apps memberi Anda dua cara untuk menyimpan rahasia tingkat aplikasi:
| Option | Paling cocok untuk | Manajemen terpusat | Rotasi otomatis | Pengelogan audit |
|---|---|---|---|---|
| Rahasia Container Apps | Dev/test, beban kerja aplikasi tunggal sederhana | Tidak - dibatasi ke satu aplikasi | No | Log aktivitas saja |
| Key Vault referensi | Produksi, multi-aplikasi, kepatuhan | Ya - di semua aplikasi | Ya (URI tanpa versi) | Diagnostik lengkap Key Vault |
Petunjuk / Saran
Mulailah dengan rahasia Container Apps untuk kesederhanaan. Pindah ke referensi Key Vault saat Anda memerlukan manajemen terpusat, rotasi otomatis, atau audit tingkat kepatuhan.
Prasyarat
- Sebuah akun Azure dengan langganan aktif. Buat akun secara gratis.
- Azure CLI versi 2.40.0 atau yang lebih tinggi.
- Aplikasi Azure Functions yang ada di Container Apps atau izin untuk membuatnya.
Menggunakan secret pada Container Apps
Container Apps menyimpan rahasia dalam array aplikasi configuration.secrets dan mengenkripsi nilai saat tidak aktif. Anda dapat mereferensikan rahasia dalam variabel lingkungan, aturan skala, pemasangan volume, dan komponen Dapr.
Menyimpan rahasia
Buka aplikasi kontainer Functions Anda di portal Azure.
Di bawah Pengaturan, pilih Rahasia.
Pilih Tambahkan dan masukkan nilai berikut:
Property Nilai Name Nama rahasia seperti database-password. Gunakan huruf kecil, angka, dan tanda hubung saja.Type Rahasia Aplikasi Kontainer Nilai Nilai rahasia Anda. Pilih Tambahkan.
Mereferensikan rahasia dalam variabel lingkungan
Setelah Anda menyimpan rahasia, referensikan dalam variabel lingkungan sehingga kode fungsi Anda dapat membacanya.
Di aplikasi kontainer Functions Anda, di bawah Aplikasi, pilih Revisi dan replika.
Pilih Buat revisi baru.
Di tab Kontainer , pilih kontainer Anda, lalu pilih Edit.
Pilih tab Variabel lingkungan , lalu pilih Tambahkan.
Masukkan nilai berikut:
Property Nilai Name DATABASE_PASSWORDSource Mengacu pada rahasia Nilai database-passwordPilih Simpan, lalu pilih Buat untuk menyebarkan revisi baru.
Verifikasi kode rahasia
Konfirmasikan fungsi Anda dapat membaca nilai rahasia dengan memanggil fungsi dan memeriksa apakah fungsi berjalan tanpa kesalahan yang terkait dengan konfigurasi yang hilang.
curl "https://<FUNCTIONS_APP_URL>/api/<FUNCTION_NAME>"
Important
Container Apps menyuntikkan nilai rahasia ke dalam variabel lingkungan saat runtime. Kode Anda membaca variabel lingkungan dan tidak mengakses penyimpanan rahasia secara langsung.
Keterbatasan
Rahasia Container Apps memiliki batasan berikut:
- Tidak ada sentralisasi - setiap aplikasi kontainer menyimpan rahasianya sendiri secara terpisah.
- Tidak ada rotasi otomatis - Anda harus memperbarui nilai rahasia secara manual.
- Tidak ada kedaluwarsa - rahasia tidak kedaluwarsa secara otomatis.
- Audit terbatas - hanya log aktivitas dasar; tidak ada audit akses rahasia terperinci.
- Tidak ada pemversionan - tidak ada riwayat versi rahasia bawaan.
- Memperbarui perilaku - mengubah rahasia tidak memicu revisi baru. Anda harus membuat revisi baru atau memulai ulang revisi yang ada untuk mengambil perubahan.
Menggunakan referensi Key Vault
Key Vault referensi memungkinkan aplikasi kontainer Anda menarik rahasia langsung dari Azure Key Vault menggunakan identitas terkelola. Pendekatan ini memberi Anda manajemen terpusat, rotasi otomatis, dan audit tingkat kepatuhan.
Langkah 1: Menyiapkan identitas terkelola
Aplikasi kontainer Anda memerlukan identitas terkelola untuk mengautentikasi ke Key Vault tanpa kredensial.
Buka aplikasi kontainer Functions Anda di portal Azure.
Di Pengaturan, pilih Identitas.
Di tab Ditetapkan sistem , atur Status ke Aktif.
Pilih Simpan, lalu pilih Ya untuk mengonfirmasi.
Langkah 2: Memberikan akses Key Vault
Tetapkan peran Key Vault Secrets User ke identitas terkelola sehingga dapat membaca rahasia.
Buka Key Vault Anda di portal Azure.
Di Pengaturan, pilih Access control (IAM).
Pilih Tambahkan>Tambahkan penugasan peran.
Pada tab Peran, pilih Pengguna Rahasia di Key Vault.
Pilih Selanjutnya.
Pada tab Anggota, pilih Identitas terkelola, kemudian pilih Pilih anggota.
Di panel Pilih identitas terkelola , pilih langganan Anda, pilih Aplikasi Kontainer untuk jenis identitas terkelola, pilih aplikasi kontainer Functions Anda, lalu pilih Pilih.
Pilih Tinjau + beri tugas.
Langkah 3: Simpan rahasia di Key Vault
Di Key Vault Anda, di Objects, pilih Secrets.
Pilih Hasilkan/Impor.
Masukkan nilai berikut:
Property Nilai Opsi unggah Manual Name Nama rahasia, misalnya DatabasePassword.Nilai Nilai rahasia Anda. Pilih Buat.
Pilih rahasia yang baru dibuat, lalu pilih versi saat ini.
Salin URI Pengidentifikasi Rahasia . Gunakan URI tanpa versi (tanpa segmen versi berikutnya) untuk mengaktifkan rotasi otomatis.
Langkah 4: Mereferensikan rahasia Key Vault di Aplikasi Kontainer
Buat rahasia Container Apps yang mereferensikan rahasia Key Vault, lalu ikat ke variabel lingkungan.
Buka aplikasi kontainer Functions Anda. Di bawah Pengaturan, pilih Rahasia.
Pilih Tambahkan.
Di Tambahkan rahasia, masukkan nilai berikut:
Property Nilai Name database-passwordType Key Vault referensi URL rahasia Key Vault URI Pengidentifikasi Rahasia yang Anda salin. Identitas Sistem yang ditetapkan (atau identitas yang ditetapkan pengguna Anda). Pilih Tambahkan.
Di bawah Aplikasi, pilih Revisi dan replika. Buat revisi baru dengan variabel lingkungan
DATABASE_PASSWORDyang merujuk ke rahasiadatabase-password.
Langkah 5: Verifikasi referensi Key Vault
Panggil fungsi Anda dan konfirmasi bahwa fungsi tersebut berjalan tanpa kesalahan yang terkait dengan konfigurasi yang kurang.
curl "https://<FUNCTIONS_APP_URL>/api/<FUNCTION_NAME>"
Rotasi rahasia otomatis
Saat Anda mereferensikan rahasia Key Vault dengan URI tanpa versi, Container Apps secara otomatis mengambil versi terbaru:
-
URI tanpa versi:
https://myvault.vault.azure.net/secrets/mysecret- selalu menggunakan versi terbaru. -
URI versi:
https://myvault.vault.azure.net/secrets/mysecret/ec96f020...- disematkan ke versi tertentu.
Dengan URI tanpa versi, Container Apps memeriksa versi baru dalam waktu 30 menit dan secara otomatis memulai ulang revisi aktif untuk mengambil nilai baru.