Gambaran umum keamanan untuk Azure Container Apps

Azure Container Apps menyediakan beberapa fitur keamanan bawaan yang membantu Anda membangun aplikasi kontainer yang aman. Panduan ini mengeksplorasi prinsip keamanan utama, termasuk identitas terkelola, manajemen rahasia, dan penyimpanan token, sambil memberikan praktik terbaik untuk membantu Anda merancang aplikasi yang aman dan dapat diskalakan.

Identitas yang dikelola

Identitas terkelola menghilangkan kebutuhan untuk menyimpan kredensial dalam kode atau konfigurasi Anda dengan memberikan identitas yang dikelola secara otomatis di ID Microsoft Entra. Aplikasi kontainer dapat menggunakan identitas ini untuk mengautentikasi ke layanan apa pun yang mendukung autentikasi Microsoft Entra, seperti Azure Key Vault, Azure Storage, atau Azure SQL Database.

Tipe identitas terkelola

Azure Container Apps mendukung dua jenis identitas terkelola:

  • Identitas yang ditetapkan sistem: Dibuat dan dikelola secara otomatis dengan siklus hidup aplikasi kontainer Anda. Identitas dihapus saat aplikasi Anda dihapus.

  • Identitas yang ditetapkan pengguna: Dibuat secara independen dan dapat ditetapkan ke beberapa aplikasi kontainer, memungkinkan berbagi identitas di seluruh sumber daya.

Manfaat keamanan identitas terkelola dalam Azure Container Apps

  • Menghilangkan kebutuhan untuk mengelola dan memutar kredensial dalam kode aplikasi Anda
  • Mengurangi risiko paparan kredensial dalam file konfigurasi
  • Menyediakan kontrol akses terperinci melalui Azure RBAC
  • Mendukung prinsip hak istimewa paling sedikit dengan hanya memberikan izin yang diperlukan

Pilih antara identitas yang ditetapkan sistem dan yang ditetapkan pengguna

  • Gunakan identitas yang ditetapkan sistem untuk beban kerja yang:

    • Terkandung dalam satu sumber daya
    • Membutuhkan identitas independen
  • Gunakan identitas yang ditetapkan pengguna untuk beban kerja yang:

    • Dijalankan pada berbagai sumber daya yang berbagi satu identitas
    • Perlu praotorisasi untuk mengamankan sumber daya

Identitas terkelola untuk penarikan gambar

Pola keamanan umum menggunakan identitas terkelola untuk menarik gambar dari repositori privat di Azure Container Registry. Pendekatan ini:

  • Menghindari penggunaan kredensial administratif untuk registri
  • Menyediakan kontrol akses terperinci melalui peran ACRPull
  • Mendukung identitas yang ditetapkan sistem dan ditetapkan pengguna
  • Dapat dikontrol untuk membatasi akses ke kontainer tertentu

Untuk informasi selengkapnya, lihat Identitas terkelola dan Penarikan gambar dari Azure Container Registry dengan identitas terkelola untuk detail selengkapnya tentang cara menyiapkan identitas terkelola untuk aplikasi Anda.

Manajemen rahasia

Azure Container Apps menyediakan mekanisme bawaan untuk menyimpan dan mengakses nilai konfigurasi sensitif dengan aman seperti string koneksi, kunci API, dan sertifikat.

Fitur manajemen rahasia utama

  • Isolasi rahasia: Batasi rahasia pada tingkat aplikasi dan pisahkan dari revisi tertentu.
  • Referensi variabel lingkungan: Mengekspos rahasia ke kontainer sebagai variabel lingkungan.
  • Pemasangan volume: Pasang rahasia sebagai file dalam kontainer.
  • Integrasi Key Vault: Rahasia referensi yang disimpan di Azure Key Vault.

Praktik terbaik untuk manajemen rahasia

  • Hindari menyimpan rahasia langsung di Container Apps untuk lingkungan produksi.
  • Gunakan integrasi Azure Key Vault untuk manajemen rahasia terpusat.
  • Terapkan hak istimewa paling sedikit saat memberikan akses ke rahasia.
  • Gunakan referensi rahasia dalam variabel lingkungan alih-alih nilai yang dikodekan langsung.
  • Gunakan pemasangan volume untuk mengakses rahasia sebagai file jika sesuai.
  • Menerapkan praktik rotasi rahasia yang tepat.

Untuk informasi selengkapnya, lihat Impor sertifikat dari Azure Key Vault untuk mempelajari cara menyiapkan manajemen rahasia untuk aplikasi Anda.

Penyimpanan token untuk keamanan autentikasi

Fitur penyimpanan token menyediakan cara yang aman untuk mengelola token autentikasi yang independen dari kode aplikasi Anda.

Cara kerja penyimpanan token autentikasi

  • Sistem menyimpan token dalam Azure Blob Storage, memisahkannya dari kode aplikasi Anda.
  • Hanya pengguna terkait yang dapat mengakses token yang di-cache.
  • Container Apps secara otomatis menangani refresh token.
  • Fitur ini mengurangi permukaan serangan dengan menghilangkan kode manajemen token kustom.

Untuk informasi selengkapnya, lihat Mengaktifkan penyimpanan token autentikasi untuk detail selengkapnya tentang cara menyiapkan penyimpanan token untuk aplikasi Anda.

Keamanan jaringan

Menerapkan langkah-langkah keamanan jaringan yang tepat membantu melindungi beban kerja Anda dari akses yang tidak sah dan potensi ancaman. Ini juga memungkinkan komunikasi yang aman antara aplikasi Anda dan layanan lainnya.

Untuk informasi selengkapnya tentang keamanan jaringan di Azure Container Apps, lihat artikel berikut ini:

Komputasi rahasia

Azure Container Apps menyertakan profil beban kerja komputasi rahasia yang menjalankan beban kerja kontainer di dalam Trusted Execution Environments (TEEs) berbasis perangkat keras. Komputasi rahasia melengkapi enkripsi Azure saat tidak aktif dan saat transit dengan melindungi data yang digunakan melalui enkripsi memori dan pengesahan lingkungan sebelum eksekusi kode. Kemampuan ini membantu mengurangi risiko akses tidak sah ke beban kerja sensitif, termasuk akses dari operator cloud.

Gunakan profil beban kerja komputasi rahasia saat aplikasi Anda memproses data yang diatur atau sangat sensitif dan memerlukan jaminan berbasis pengesahan. Untuk ikhtisar region yang didukung dan kemampuan platform, lihat Azure Confidential Computing.

Untuk detail konfigurasi, lihat komputasi rahasia di Azure Container Apps.

Microsoft Defender untuk Cloud Postur Kontainer Tanpa Server (pratinjau)

Microsoft Defender untuk Cloud mencakup kemampuan postur kontainer tanpa server dalam CSPM untuk Azure Container Apps. Kemampuan ini memberikan inventarisasi, penilaian postur, dan analisis jalur serangan untuk beban kerja Azure Container Apps sehingga tim keamanan dapat mengidentifikasi dan memprioritaskan risiko di lingkungan aplikasi kontainer mereka. Untuk panduan orientasi dan detail fitur, lihat Perlindungan tanpa server.