Amazon Data Lifecycle Manager를 위한 IAM 서비스 역할
AWS에서 자격 증명이 할 수 있는 것과 없는 것을 결정하는 권한 정책을 갖춘 AWS 자격 증명이라는 점에서 AWS Identity and Access Management(IAM) 역할은 IAM 사용자와 유사합니다. 그러나 역할은 한 사람하고만 연관되지 않고 해당 역할이 필요한 사람이라면 누구든지 맡을 수 있어야 합니다. 서비스 역할은 사용자를 대신하여 작업을 수행하기 위해 AWS 서비스가 맡는 역할입니다. 사용자 대신 백업 작업을 수행하는 서비스인 Amazon Data Lifecycle Manager에 사용자 대신 정책 작업을 수행할 때 맡아야 할 역할을 전달해야 합니다. IAM 역할에 대한 자세한 내용은 IAM 사용 설명서의 IAM 역할 섹션을 참조하세요.
Amazon Data Lifecycle Manager에 전달하는 역할에는 Amazon Data Lifecycle Manager가 스냅샷 및 AMI 생성, 스냅샷 및 AMI 복사, 스냅샷 삭제, AMI 등록 취소 등 정책 작업과 관련된 작업을 수행할 수 있는 권한이 부여된 IAM 정책이 있어야 합니다. Amazon Data Lifecycle Manager 정책 유형마다 서로 다른 권한이 필요합니다. 또한 Amazon Data Lifecycle Manager가 신뢰할 수 있는 엔터티로 역할에 나열되어 있어야 Amazon Data Lifecycle Manager가 해당 역할을 맡을 수 있습니다.
Amazon Data Lifecycle Manager를 위한 기본 서비스 역할
Amazon Data Lifecycle Manager는 다음 기본 서비스 역할을 사용합니다.
-
AWSDataLifecycleManagerDefaultRole—스냅샷 관리를 위한 기본 역할입니다. 역할을 수임할 대상으로
dlm.amazonaws.com
서비스만 신뢰하며, Amazon Data Lifecycle Manager가 사용자를 대신하여 스냅샷 및 교차 계정 스냅샷 복사 정책에 필요한 작업을 수행하도록 합니다. 이 역할에는AWSDataLifecycleManagerServiceRole
AWS 관리형 정책이 사용됩니다.참고
역할의 ARN 형식은 콘솔을 사용하여 생성했는지 AWS CLI를 사용하여 생성했는지에 따라 다릅니다. 콘솔을 사용하여 역할을 생성한 경우 ARN 형식은
arn:aws:iam::
입니다. AWS CLI를 사용하여 역할을 생성한 경우 ARN 형식은account_id
:role/service-role/AWSDataLifecycleManagerDefaultRolearn:aws:iam::
입니다.account_id
:role/AWSDataLifecycleManagerDefaultRole -
AWSDataLifecycleManagerDefaultRoleForAMIManagement—AMI 관리를 위한 기본 역할입니다. 역할을 수임할 대상으로
dlm.amazonaws.com
서비스만 신뢰하며, Amazon Data Lifecycle Manager가 사용자를 대신하여 EBS 지원 AMI 정책에 필요한 작업을 수행하도록 합니다. 이 역할에는AWSDataLifecycleManagerServiceRoleForAMIManagement
AWS 관리형 정책이 사용됩니다.
Amazon Data Lifecycle Manager 콘솔을 사용할 경우, 스냅샷 또는 교차 계정 스냅샷 복사 정책을 처음 생성할 때 Amazon Data Lifecycle Manager가 AWSDataLifecycleManagerDefaultRole 서비스 역할을 자동으로 생성하며, EBS 지원 AMI 정책을 처음 생성할 때 AWSDataLifecycleManagerDefaultRoleForAMIManagement 서비스 역할을 자동으로 생성합니다.
콘솔을 사용하지 않을 경우 create-default-role 명령을 사용하여 서비스 역할을 수동으로 생성할 수 있습니다. --resource-type
에 snapshot
을 지정하여 AWSDataLifecycleManagerDefaultRole을 생성하거나 image
를 지정하여 AWSDataLifecycleManagerDefaultRoleForAMIManagement를 생성합니다.
$
aws dlm create-default-role --resource-typesnapshot|image
기본 서비스 역할을 삭제한 다음 다시 생성해야 하는 경우 동일한 프로세스를 사용하여 계정에서 역할을 다시 생성할 수 있습니다.
Amazon Data Lifecycle Manager를 위한 사용자 지정 서비스 역할
기본 서비스 역할을 사용하는 것에 대한 대안으로, 필요한 권한이 있는 사용자 지정 IAM 역할을 생성한 다음, 수명 주기 정책을 생성할 때 이를 선택해도 됩니다.
사용자 지정 IAM 역할을 생성하려면
-
다음 권한을 가진 역할을 생성합니다.
-
스냅샷 수명 주기 정책을 관리하는 데 필요한 권한
{ "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" } } } ] }
-
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/*" } ] }
자세한 내용은 IAM 사용 설명서의 역할 생성을 참조하세요.
-
-
역할에 신뢰 관계를 추가합니다.
-
IAM 콘솔에서 역할을 선택합니다.
-
생성한 역할을 선택하고 신뢰 관계(Trust relationships)를 선택합니다.
-
신뢰 관계 편집을 선택하고 다음 정책을 추가한 뒤 신뢰 정책 업데이트를 선택합니다.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "dlm.amazonaws.com" }, "Action": "sts:AssumeRole" }] }
혼동된 대리자 문제로부터 자신을 보호하기 위하여
aws:SourceAccount
및aws:SourceArn
조건 키를 사용할 것을 권장합니다. 예를 들어 이전 신뢰 정책에 다음 조건 블록을 추가할 수 있습니다.aws:SourceAccount
는 수명 주기 정책의 소유자이고,aws:SourceArn
은 수명 주기 정책의 ARN입니다. 수명 주기 정책 ID를 모르는 경우 ARN의 해당 부분을 와일드카드(*
)로 바꾼 다음 수명 주기 정책을 만든 후 신뢰 정책을 업데이트할 수 있습니다."Condition": { "StringEquals": { "aws:SourceAccount": "
account_id
" }, "ArnLike": { "aws:SourceArn": "arn:partition
:dlm:region
:account_id
:policy/policy_id
" } }
-