Meneruskan data sensitif ke wadah Amazon ECS - Amazon Elastic Container Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Meneruskan data sensitif ke wadah Amazon ECS

Anda dapat meneruskan data sensitif dengan aman, seperti kredensyal ke database, ke dalam wadah Anda.

Rahasia, seperti kunci API dan kredensyal basis data, sering digunakan oleh aplikasi untuk mendapatkan akses sistem lain. Mereka sering terdiri dari nama pengguna dan kata sandi, sertifikat, atau kunci API. Akses ke rahasia ini harus dibatasi pada prinsipal IAM tertentu yang menggunakan IAM dan disuntikkan ke dalam wadah saat runtime.

Rahasia dapat disuntikkan dengan mulus ke dalam wadah dari AWS Secrets Manager dan Amazon EC2 Systems Manager Parameter Store. Rahasia-rahasia ini dapat direferensikan dalam tugas Anda sebagai salah satu dari berikut ini.

  1. Mereka direferensikan sebagai variabel lingkungan yang menggunakan parameter definisi secrets kontainer.

  2. Mereka direferensikan secretOptions seolah-olah platform logging Anda memerlukan otentikasi. Untuk informasi selengkapnya, lihat opsi konfigurasi logging.

  3. Mereka direferensikan sebagai rahasia yang ditarik oleh gambar yang menggunakan parameter definisi repositoryCredentials wadah jika registri tempat penampung ditarik memerlukan otentikasi. Gunakan metode ini saat menarik gambar dari Galeri Publik Amazon ECR. Untuk informasi selengkapnya, lihat Autentikasi registri pribadi untuk tugas.

Kami menyarankan Anda melakukan hal berikut saat mengatur manajemen rahasia.

Gunakan AWS Secrets Manager atau AWS Systems Manager Parameter Menyimpan untuk menyimpan materi rahasia

Anda harus menyimpan kunci API, kredensyal database, dan materi rahasia lainnya dengan aman di Secrets Manager atau sebagai parameter terenkripsi di Systems Manager Parameter Store. Layanan ini serupa karena keduanya merupakan penyimpanan nilai kunci terkelola yang digunakan AWS KMS untuk mengenkripsi data sensitif. Secrets Manager, bagaimanapun, juga mencakup kemampuan untuk secara otomatis memutar rahasia, menghasilkan rahasia acak, dan berbagi rahasia di seluruh akun. Jika fitur penting ini, gunakan Secrets Manager jika tidak, gunakan parameter terenkripsi.

penting

Rahasia yang direferensikan dalam tugas tidak diputar secara otomatis. Jika rahasia Anda berubah, Anda harus memaksa penerapan baru atau meluncurkan tugas baru untuk mengambil nilai rahasia terbaru. Untuk informasi selengkapnya, lihat topik berikut.

Mengambil data dari bucket Amazon S3 terenkripsi

Anda harus menyimpan rahasia di bucket Amazon S3 terenkripsi dan menggunakan peran tugas untuk membatasi akses ke rahasia tersebut. Ini mencegah nilai variabel lingkungan dapat secara tidak sengaja bocor di log dan terungkap saat dijalankan. docker inspect Ketika Anda melakukan ini, aplikasi Anda harus ditulis untuk membaca rahasia dari ember Amazon S3. Untuk petunjuknya, lihat Menyetel perilaku enkripsi sisi server default untuk bucket Amazon S3.

Pasang rahasia ke volume menggunakan wadah sespan

Karena ada peningkatan risiko kebocoran data dengan variabel lingkungan, Anda harus menjalankan wadah sespan yang membaca rahasia Anda AWS Secrets Manager dan menuliskannya ke volume bersama. Kontainer ini dapat berjalan dan keluar sebelum penampung aplikasi dengan menggunakan pemesanan kontainer Amazon ECS. Ketika Anda melakukan ini, wadah aplikasi kemudian memasang volume tempat rahasia itu ditulis. Seperti metode bucket Amazon S3, aplikasi Anda harus ditulis untuk membaca rahasia dari volume bersama. Karena volume tercakup pada tugas, volume secara otomatis dihapus setelah tugas berhenti. Untuk contoh wadah sespan, lihat proyeknya aws-secret-sidecar-injector.

Di Amazon EC2, volume tempat rahasia ditulis dapat dienkripsi dengan kunci yang AWS KMS dikelola pelanggan. AWS Fargate Aktif, penyimpanan volume secara otomatis dienkripsi menggunakan kunci yang dikelola layanan.