Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menentukan data sensitif menggunakan rahasia Secrets Manager di Amazon ECS
Amazon ECS memungkinkan Anda untuk menyuntikkan data sensitif ke dalam container Anda dengan menyimpan data sensitif Anda dalam AWS Secrets Manager rahasia dan kemudian mereferensikannya dalam definisi container Anda. Untuk informasi selengkapnya, lihat Meneruskan data sensitif ke wadah Amazon ECS.
Pelajari cara membuat rahasia Secrets Manager, mereferensikan rahasia dalam definisi tugas Amazon ECS, lalu verifikasi itu berhasil dengan menanyakan variabel lingkungan di dalam wadah yang menunjukkan konten rahasia.
Prasyarat
Jika mengikuti tutorial ini, berarti prasyarat berikut telah selesai:
-
Langkah-langkah di Siapkan untuk menggunakan Amazon ECS telah selesai.
-
Pengguna Anda memiliki izin IAM yang diperlukan untuk membuat Secrets Manager dan sumber daya Amazon ECS.
Langkah 1: Buat rahasia Secrets Manager
Anda dapat menggunakan konsol Secrets Manager untuk membuat rahasia untuk data sensitif Anda. Dalam tutorial ini kita akan menciptakan rahasia dasar untuk menyimpan nama pengguna dan kata sandi untuk mereferensi nanti dalam sebuah kontainer. Untuk informasi selengkapnya, lihat Membuat AWS Secrets Manager rahasia di Panduan AWS Secrets Manager Pengguna.
Pasangan kunci/nilai yang akan disimpan dalam rahasia ini adalah nilai variabel lingkungan dalam wadah Anda di akhir tutorial.
Simpan ARN Rahasia untuk referensi dalam kebijakan IAM eksekusi tugas Anda dan definisi tugas di langkah selanjutnya.
Langkah 2: Tambahkan izin rahasia ke peran eksekusi tugas
Agar Amazon ECS dapat mengambil data sensitif dari rahasia Secrets Manager Anda, Anda harus memiliki izin rahasia untuk peran eksekusi tugas. Untuk informasi selengkapnya, lihat Izin Secrets Manager atau Systems Manager.
Langkah 3: Membuat sebuah penetapan tugas
Anda dapat menggunakan konsol Amazon ECS untuk membuat definisi tugas yang mereferensikan rahasia Secrets Manager.
Untuk membuat ketentuan tugas yang menetapkan rahasia
Gunakan konsol IAM untuk memperbarui peran eksekusi tugas Anda dengan izin yang diperlukan.
Buka konsol di https://console.aws.amazon.com/ecs/v2
. -
Di panel navigasi, pilih Definisi tugas.
-
Pilih Buat definisi tugas baru, Buat definisi tugas baru dengan JSON.
-
Di kotak editor JSON, masukkan teks JSON definisi tugas berikut, pastikan Anda menentukan ARN lengkap rahasia Secrets Manager yang Anda buat di langkah 1 dan peran eksekusi tugas yang Anda perbarui di langkah 2. Pilih Simpan.
-
{ "executionRoleArn": "
arn:aws:iam::
", "containerDefinitions": [ { "entryPoint": [ "sh", "-c" ], "portMappings": [ { "hostPort": 80, "protocol": "tcp", "containerPort": 80 } ], "command": [ "/bin/sh -c \"echo '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p> </div></body></html>' > /usr/local/apache2/htdocs/index.html && httpd-foreground\"" ], "cpu": 10, "secrets": [ { "valueFrom": "aws_account_id
:role/ecsTaskExecutionRolearn:aws:secretsmanager:
", "name": "username_value" } ], "memory": 300, "image": "public.ecr.aws/docker/library/httpd:2.4", "essential": true, "name": "ecs-secrets-container" } ], "family": "ecs-secrets-tutorial" }region
:aws_account_id
:secret:username_value -
Pilih Buat.
Langkah 4: Buat cluster
Anda dapat menggunakan konsol Amazon ECS untuk membuat klaster yang berisi instance container untuk menjalankan tugas. Jika Anda memiliki klaster yang ada dengan setidaknya satu instans kontainer yang terdaftar untuk itu dengan sumber daya yang tersedia untuk menjalankan satu instans dari ketentuan tugas yang dibuat untuk tutorial ini Anda dapat melompat ke langkah berikutnya.
Untuk tutorial ini kita akan membuat cluster dengan satu instance t2.micro
container menggunakan Amazon ECS Amazon Linux 2 AMI yang dioptimalkan Amazon ECS.
Untuk informasi tentang cara membuat klaster untuk jenis EC2 peluncuran, lihatMembuat cluster Amazon ECS untuk jenis EC2 peluncuran Amazon.
Langkah 5: Jalankan tugas
Anda dapat menggunakan konsol Amazon ECS untuk menjalankan tugas menggunakan definisi tugas yang Anda buat. Untuk tutorial ini kita akan menjalankan tugas menggunakan tipe EC2 peluncuran, menggunakan cluster yang kita buat pada langkah sebelumnya.
Untuk informasi tentang cara menjalankan tugas, lihatMenjalankan aplikasi sebagai tugas Amazon ECS.
Langkah 6: Verifikasi
Anda dapat memverifikasi bahwa semua langkah berhasil diselesaikan dan variabel lingkungan dibuat dengan benar dalam kontainer Anda menggunakan langkah-langkah berikut.
Untuk memverifikasi bahwa variabel lingkungan telah dibuat
-
Cari IP publik atau alamat DNS untuk instans kontainer Anda.
Buka konsol di https://console.aws.amazon.com/ecs/v2
. -
Di panel navigasi, pilih Clusters, lalu pilih cluster yang Anda buat.
-
Pilih Infrastruktur, lalu pilih instance container.
-
Rekam IP Publik atau DNS Publik untuk instans Anda.
-
Jika Anda menggunakan komputer macOS atau Linux, sambungkan ke instans Anda dengan perintah berikut, ganti jalur ke kunci pribadi dan alamat publik untuk instans Anda:
$
ssh -i/path/to/my-key-pair
.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com
Untuk informasi selengkapnya tentang menggunakan komputer Windows, lihat Connect ke instans Linux menggunakan PuTTY di EC2 Panduan Pengguna Amazon.
penting
Untuk informasi selengkapnya tentang masalah apa pun saat menyambung ke instans, lihat Memecahkan Masalah Menyambung ke Instans Anda di EC2 Panduan Pengguna Amazon.
-
Cantumkan kontainer yang berjalan pada instans. Catat ID kontainer untuk kontainer
ecs-secrets-tutorial
.docker ps
-
Terhubung ke kontainer
ecs-secrets-tutorial
menggunakan ID kontainer dari output dari langkah sebelumnya.docker exec -it
container_ID
/bin/bash -
Gunakan perintah
echo
untuk mencetak nilai variabel lingkungan.echo $username_value
Jika tutorial berhasil, Anda akan melihat output sebagai berikut:
password_value
catatan
Atau, Anda dapat mencantumkan semua variabel lingkungan dalam wadah Anda menggunakan perintah
env
(atauprintenv
).
Langkah 7: Bersihkan
Setelah selesai dengan tutorial ini, Anda harus membersihkan sumber daya yang terkait untuk menghindari timbulnya biaya untuk sumber daya yang tidak terpakai.
Untuk membersihkan sumber daya
Buka konsol di https://console.aws.amazon.com/ecs/v2
. -
Pada panel navigasi, silakan pilih Klaster.
-
Pada halaman Clusters, pilih cluster.
-
Pilih Hapus klaster.
-
Di kotak konfirmasi, masukkan hapus
cluster name
, lalu pilih Hapus. Buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi, pilih Peran.
-
Cari daftar peran untuk
ecsTaskExecutionRole
dan pilih peran itu. -
Pilih Izin, lalu pilih X di sebelah ECSSecretsTutorial. Pilih Hapus.
-
Buka konsol Secrets Manager di https://console.aws.amazon.com/secretsmanager/
. -
Pilih rahasia username_value yang Anda buat dan pilih Tindakan, Hapus rahasia.