Peran layanan IAM - Amazon Elastic Compute Cloud

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

Peran layanan IAM

Peran AWS Identity and Access Management (IAM) serupa dengan pengguna, yang merupakan identitas AWS dengan kebijakan izin yang menentukan apa yang dapat dan tidak dapat dilakukan oleh identitas tersebut di AWS. Namun, alih-alih terkait dengan satu orang secara unik, peran dimaksudkan untuk menjadi dapat diambil oleh siapa pun yang membutuhkannya. Peran layanan adalah peran yang diambil oleh layanan AWS untuk melakukan tindakan atas nama Anda. Sebagai layanan yang melakukan operasi pencadangan atas nama Anda, Amazon Data Lifecycle Manager mengharuskan Anda meneruskan peran yang harus diambil saat melakukan operasi kebijakan atas nama Anda. Untuk informasi selengkapnya tentang peran IAM, lihat Peran IAM dalam Panduan Pengguna IAM.

Peran yang diteruskan ke Amazon Data Lifecycle Manager harus memiliki kebijakan IAM dengan izin yang memungkinkan Amazon Data Lifecycle Manager untuk melakukan tindakan yang terkait dengan operasi kebijakan, seperti membuat snapshot dan AMI, menyalin snapshot dan AMI, menghapus snapshot, dan membatalkan pendaftaran AMI. Izin yang berbeda diperlukan untuk setiap jenis kebijakan Amazon Data Lifecycle Manager. Peran ini juga harus memiliki Amazon Data Lifecycle Manager terdaftar sebagai entitas tepercaya, yang memungkinkan Amazon Data Lifecycle Manager untuk mengambil peran.

Peran layanan default untuk Amazon Data Lifecycle Manager

Amazon Data Lifecycle Manager menggunakan peran layanan default berikut:

  • AWSDataLifecycleManagerDefaultRole—peran default untuk mengelola snapshot. Peran ini hanya memercayai layanan dlm.amazonaws.com untuk mengambil peran dan memungkinkan Amazon Data Lifecycle Manager untuk melakukan tindakan yang diperlukan oleh kebijakan penyalinan snapshot lintas akun dan snapshot atas nama Anda. Peran ini menggunakan kebijakan yang dikelola AWS AWSDataLifecycleManagerServiceRole.

    catatan

    Format ARN peran berbeda tergantung pada apakah itu dibuat menggunakan konsol atau. AWS CLI Jika peran dibuat menggunakan konsol, format ARN adalah arn:aws:iam::account_id:role/service-role/AWSDataLifecycleManagerDefaultRole. Jika peran dibuat menggunakan AWS CLI, format ARN adalah arn:aws:iam::account_id:role/AWSDataLifecycleManagerDefaultRole.

  • AWSDataLifecycleManagerDefaultRoleForAMIManagement—peran default untuk mengelola AMI. Layanan hanya mempercayai layanan dlm.amazonaws.com untuk mengambil peran tersebut dan memungkinkan Amazon Data Lifecycle Manager untuk melakukan tindakan yang diperlukan oleh kebijakan AMI yang didukung EBS atas nama Anda. Peran ini menggunakan kebijakan yang dikelola AWS AWSDataLifecycleManagerServiceRoleForAMIManagement.

Jika Anda menggunakan konsol Amazon Data Lifecycle Manager, Amazon Data Lifecycle Manager secara otomatis AWSDataLifecycleManagerDefaultRolemembuat peran layanan saat pertama kali Anda membuat kebijakan penyalinan snapshot atau snapshot lintas akun, dan secara otomatis membuat peran layanan saat pertama kali AWSDataLifecycleManagerDefaultRoleForAMIManagementmembuat kebijakan AMI yang didukung EBS.

Jika Anda tidak menggunakan konsol, Anda dapat membuat peran layanan secara manual menggunakan create-default-roleperintah. Untuk--resource-type, tentukan snapshot untuk membuat AWSDataLifecycleManagerDefaultRole, atau image membuat AWSDataLifecycleManagerDefaultRoleForAMIManagement.

$ aws dlm create-default-role --resource-type snapshot|image

Jika Anda menghapus peran layanan default, kemudian ingin membuatnya lagi, Anda dapat menggunakan proses yang sama untuk membuatnya ulang di akun Anda.

Peran layanan kustom untuk Amazon Data Lifecycle Manager

Sebagai alternatif untuk menggunakan peran layanan default, Anda dapat membuat peran IAM kustom dengan izin yang diperlukan lalu memilihnya saat Anda membuat kebijakan siklus hidup.

Untuk membuat peran IAM kustom
  1. Buat peran dengan izin sebagai berikut.

    • Izin diperlukan untuk mengelola kebijakan siklus hidup snapshot

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateSnapshot", "ec2:CreateSnapshots", "ec2:DeleteSnapshot", "ec2:DescribeInstances", "ec2:DescribeVolumes", "ec2:DescribeSnapshots", "ec2:EnableFastSnapshotRestores", "ec2:DescribeFastSnapshotRestores", "ec2:DisableFastSnapshotRestores", "ec2:CopySnapshot", "ec2:ModifySnapshotAttribute", "ec2:DescribeSnapshotAttribute", "ec2:ModifySnapshotTier", "ec2:DescribeSnapshotTierStatus" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*::snapshot/*" }, { "Effect": "Allow", "Action": [ "events:PutRule", "events:DeleteRule", "events:DescribeRule", "events:EnableRule", "events:DisableRule", "events:ListTargetsByRule", "events:PutTargets", "events:RemoveTargets" ], "Resource": "arn:aws:events:*:*:rule/AwsDataLifecycleRule.managed-cwe.*" }, { "Effect": "Allow", "Action": [ "ssm:GetCommandInvocation", "ssm:ListCommands", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:SendCommand", "ssm:DescribeDocument", "ssm:GetDocument" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/DLMScriptsAccess": "true" } } }, { "Effect": "Allow", "Action": [ "ssm:SendCommand", "ssm:DescribeDocument", "ssm:GetDocument" ], "Resource": [ "arn:aws:ssm:*::document/*" ] }, { "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringNotLike": { "aws:ResourceTag/DLMScriptsAccess": "false" } } } ] }
    • Izin diperlukan untuk mengelola kebijakan siklus hidup AMI

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": [ "arn:aws:ec2:*::snapshot/*", "arn:aws:ec2:*::image/*" ] }, { "Effect": "Allow", "Action": [ "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeImageAttribute", "ec2:DescribeVolumes", "ec2:DescribeSnapshots" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:DeleteSnapshot", "Resource": "arn:aws:ec2:*::snapshot/*" }, { "Effect": "Allow", "Action": [ "ec2:ResetImageAttribute", "ec2:DeregisterImage", "ec2:CreateImage", "ec2:CopyImage", "ec2:ModifyImageAttribute" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:EnableImageDeprecation", "ec2:DisableImageDeprecation" ], "Resource": "arn:aws:ec2:*::image/*" } ] }

    Untuk informasi selengkapnya, lihat Membuat Peran dalam Panduan Pengguna IAM.

  2. Tambahkan hubungan kepercayaan ke peran tersebut.

    1. Di konsol IAM, pilih Peran.

    2. Pilih peran yang Anda buat, lalu pilih Hubungan kepercayaan.

    3. Pilih Edit Hubungan Kepercayaan, tambahkan kebijakan berikut, lalu pilih Perbarui Kebijakan Kepercayaan.

      { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "dlm.amazonaws.com" }, "Action": "sts:AssumeRole" }] }

      Kami menyarankan Anda menggunakan kunci syarat aws:SourceAccount dan aws:SourceArn untuk melindungi diri Anda dari masalah wakil yang membingungkan. Misalnya, Anda dapat menambahkan blok kondisi berikut ke kebijakan kepercayaan sebelumnya. aws:SourceAccount adalah pemilik kebijakan siklus hidup dan aws:SourceArn adalah ARN dari kebijakan siklus hidup. Jika Anda tidak mengetahui ID kebijakan siklus hidup, Anda dapat mengganti bagian ARN tersebut dengan wildcard (*), lalu memperbarui kebijakan trust setelah Anda membuat kebijakan siklus hidup.

      "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:partition:dlm:region:account_id:policy/policy_id" } }