Peran Amazon ECS CodeDeploy IAM - Amazon Elastic Container Service

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

Peran Amazon ECS CodeDeploy IAM

Sebelum Anda dapat menggunakan jenis penyebaran CodeDeploy biru/hijau dengan Amazon ECS, CodeDeploy layanan memerlukan izin untuk memperbarui layanan Amazon ECS Anda atas nama Anda. Izin ini disediakan oleh peran CodeDeploy IAM ()ecsCodeDeployRole.

catatan

Pengguna juga memerlukan izin untuk digunakan CodeDeploy; izin ini dijelaskan dalam. Izin IAM yang diperlukan

Ada dua kebijakan terkelola yang disediakan. Untuk informasi selengkapnya, lihat salah satu hal berikut di Panduan Referensi Kebijakan AWS Terkelola:

Menciptakan CodeDeploy peran

Anda dapat menggunakan prosedur berikut untuk membuat CodeDeploy peran untuk Amazon ECS

AWS Management Console
Untuk membuat peran layanan untuk CodeDeploy (konsol IAM)
  1. Masuk ke AWS Management Console dan buka konsol IAM di https://console.aws.amazon.com/iam/.

  2. Di panel navigasi konsol IAM, pilih Peran, dan lalu pilih Buat peran.

  3. Untuk jenis entitas Tepercaya, pilih Layanan AWS.

  4. Untuk kasus Layanan atau penggunaan, pilih CodeDeploy, lalu pilih kasus penggunaan CodeDeploy - ECS.

  5. Pilih Selanjutnya.

  6. Di bagian Lampirkan kebijakan izin, pastikan AWSCodeDeployRoleForECSkebijakan tersebut dipilih.

  7. Pilih Selanjutnya.

  8. Untuk nama Peran, masukkan ecsCodeDeployPeran.

  9. Tinjau peran lalu pilih Buat peran.

AWS CLI

Ganti semua input pengguna dengan informasi Anda sendiri.

  1. Buat file bernama codedeploy-trust-policy.json yang berisi kebijakan kepercayaan yang akan digunakan untuk peran CodeDeploy IAM.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": ["codedeploy.amazonaws.com"] }, "Action": "sts:AssumeRole" } ] }
  2. Buat peran IAM bernama ecsCodedeployRole menggunakan kebijakan kepercayaan yang dibuat pada langkah sebelumnya.

    aws iam create-role \ --role-name ecsCodedeployRole \ --assume-role-policy-document file://codedeploy-trust-policy.json
  3. Lampirkan kebijakan AWSCodeDeployRoleForECS atau yang AWSCodeDeployRoleForECSLimited dikelola ke ecsTaskRole peran.

    aws iam attach-role-policy \ --role-name ecsCodedeployRole \ --policy-arn arn:aws::iam::aws:policy/AWSCodeDeployRoleForECS
    aws iam attach-role-policy \ --role-name ecsCodedeployRole \ --policy-arn arn:aws::iam::aws:policy/AWSCodeDeployRoleForECSLimited

Saat tugas di layanan Anda memerlukan peran ececution tugas, Anda harus menambahkan iam:PassRole izin untuk setiap peran eksekusi tugas atau penggantian peran tugas ke CodeDeploy peran sebagai kebijakan.

Izin peran eksekusi tugas

Saat tugas di layanan Anda memerlukan peran ececution tugas, Anda harus menambahkan iam:PassRole izin untuk setiap peran eksekusi tugas atau penggantian peran tugas ke CodeDeploy peran sebagai kebijakan. Untuk informasi selengkapnya, lihat Peran IAM eksekusi tugas Amazon ECS dan Peran IAM tugas Amazon ECS. Kemudian, Anda melampirkan kebijakan itu ke CodeDeploy peran tersebut

Buat kebijakan

AWS Management Console
Cara menggunakan editor kebijakan JSON untuk membuat kebijakan
  1. Masuk ke AWS Management Console dan buka konsol IAM di https://console.aws.amazon.com/iam/.

  2. Pada panel navigasi di sebelah kiri, pilih Kebijakan.

    Jika ini pertama kalinya Anda memilih Kebijakan, akan muncul halaman Selamat Datang di Kebijakan Terkelola. Pilih Memulai.

  3. Di bagian atas halaman, pilih Buat kebijakan.

  4. Di bagian Editor kebijakan, pilih opsi JSON.

  5. Masukkan dokumen kebijakan JSON berikut:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsCodeDeployRole>"] } ] }
  6. Pilih Selanjutnya.

    catatan

    Anda dapat beralih antara opsi editor Visual dan JSON kapan saja. Namun, jika Anda melakukan perubahan atau memilih Berikutnya di editor Visual, IAM dapat merestrukturisasi kebijakan Anda untuk mengoptimalkannya bagi editor visual. Untuk informasi selengkapnya, lihat Restrukturisasi kebijakan dalam Panduan Pengguna IAM.

  7. Pada halaman Tinjau dan buat, masukkan Nama kebijakan dan Deskripsi (opsional) untuk kebijakan yang Anda buat. Tinjau Izin yang ditentukan dalam kebijakan ini untuk melihat izin yang diberikan oleh kebijakan Anda.

  8. Pilih Buat kebijakan untuk menyimpan kebijakan baru Anda.

Setelah Anda membuat kebijakan, lampirkan kebijakan ke CodeDeploy peran. Untuk informasi tentang cara melampirkan kebijakan ke peran, lihat Memodifikasi kebijakan izin peran (konsol) di AWS Identity and Access Management Panduan Pengguna.

AWS CLI

Ganti semua input pengguna dengan informasi Anda sendiri.

  1. Buat file bernama blue-green-iam-passrole.json dengan konten berikut.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsCodeDeployRole>"] } ] }
  2. Gunakan perintah berikut untuk membuat kebijakan IAM menggunakan file dokumen kebijakan JSON.

    aws iam create-policy \ --policy-name cdTaskExecutionPolicy \ --policy-document file://blue-green-iam-passrole.json
  3. Ambil ARN dari kebijakan IAM yang Anda buat menggunakan perintah berikut.

    aws iam list-policies --scope Local --query 'Policies[?PolicyName==`cdTaskExecutionPolicy`].Arn'
  4. Gunakan perintah berikut untuk melampirkan kebijakan ke peran CodeDeploy IAM.

    aws iam attach-role-policy \ --role-name ecsCodedeployRole \ --policy-arn arn:aws:iam:111122223333:aws:policy/cdTaskExecutionPolicy