Menentukan data sensitif menggunakan rahasia Secrets Manager di 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.

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 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 lebih lanjut, lihat Membuat Rahasia Dasar dalam Panduan Pengguna AWS Secrets Manager .

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.

  1. Buka konsol di https://console.aws.amazon.com/ecs/v2.

  2. Di panel navigasi, pilih Definisi tugas.

  3. Pilih Buat definisi tugas baru, Buat definisi tugas baru dengan JSON.

  4. 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.

  5. { "executionRoleArn": "arn:aws:iam::aws_account_id:role/ecsTaskExecutionRole", "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": "arn:aws:secretsmanager:region:aws_account_id:secret:username_value", "name": "username_value" } ], "memory": 300, "image": "httpd:2.4", "essential": true, "name": "ecs-secrets-container" } ], "family": "ecs-secrets-tutorial" }
  6. 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 cluster untuk jenis peluncuran EC2, lihatMembuat cluster Amazon ECS untuk jenis peluncuran Amazon EC2.

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 peluncuran EC2, 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
  1. Cari IP publik atau alamat DNS untuk instans kontainer Anda.

    1. Buka konsol di https://console.aws.amazon.com/ecs/v2.

    2. Di panel navigasi, pilih Clusters, lalu pilih cluster yang Anda buat.

    3. Pilih Infrastruktur, lalu pilih instance container.

    4. Rekam IP Publik atau DNS Publik untuk instans Anda.

  2. 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 Menghubungkan ke Instans Linux Anda dari Windows Menggunakan PuTTY di Panduan Pengguna Amazon EC2.

    penting

    Untuk informasi selengkapnya tentang masalah apa pun saat menyambung ke instans, lihat Memecahkan Masalah Menyambung ke Instans Anda di Panduan Pengguna Amazon EC2.

  3. Cantumkan kontainer yang berjalan pada instans. Catat ID kontainer untuk kontainer ecs-secrets-tutorial.

    docker ps
  4. Terhubung ke kontainer ecs-secrets-tutorial menggunakan ID kontainer dari output dari langkah sebelumnya.

    docker exec -it container_ID /bin/bash
  5. 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 (atau printenv).

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
  1. Buka konsol di https://console.aws.amazon.com/ecs/v2.

  2. Pada panel navigasi, silakan pilih Klaster.

  3. Pada halaman Clusters, pilih cluster.

  4. Pilih Hapus klaster.

  5. Di kotak konfirmasi, masukkan hapus nama cluster, lalu pilih Hapus.

  6. Buka konsol IAM di https://console.aws.amazon.com/iam/.

  7. Di panel navigasi, pilih Peran.

  8. Cari daftar peran untuk ecsTaskExecutionRole dan pilih peran itu.

  9. Pilih Izin, lalu pilih X di sebelah ECS SecretsTutorial. Pilih Hapus.

  10. Buka konsol Secrets Manager di https://console.aws.amazon.com/secretsmanager/.

  11. Pilih rahasia username_value yang Anda buat dan pilih Tindakan, Hapus rahasia.