IAM Amazon Data Lifecycle Manager のサービスロール - Amazon EBS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

IAM Amazon Data Lifecycle Manager のサービスロール

AWS Identity and Access Management (IAM) ロールは、 AWS アイデンティティが実行できることとできないことを決定するアクセス許可ポリシーを持つアイデンティティであるという点で、ユーザーと似ています AWS。ただし、ユーザーは 1 人の特定の人に一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。サービスロールは、 AWS サービスがユーザーに代わってアクションを実行するために引き受けるロールです。お客様に代わってバックアップ操作を実行するサービスとして、Amazon Data Lifecycle Managerでは、お客様に代わってポリシー操作を実行するときに、想定するロールを渡す必要があります。IAM ロールの詳細については、「 IAMユーザーガイド」のIAM「 ロール」を参照してください。

Amazon Data Lifecycle Manager に渡すロールには、Amazon Data Lifecycle Manager がスナップショットと の作成、スナップショットと のコピー、スナップショットの削除AMIs、 の登録解除などAMIs、ポリシーオペレーションに関連するアクションを実行できるようにするアクセス許可IAMを持つ ポリシーが必要ですAMIs。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::account_id:role/service-role/AWSDataLifecycleManagerDefaultRole。ロールが を使用して作成された場合 AWS CLI、ARN形式は ですarn:aws:iam::account_id:role/AWSDataLifecycleManagerDefaultRole

  • AWSDataLifecycleManagerDefaultRoleForAMIManagement— を管理するためのデフォルトロールAMIs。ロールを引き受けるdlm.amazonaws.comサービスのみを信頼し、Amazon Data Lifecycle Manager がユーザーに代わって EBS-backed AMIポリシーに必要なアクションを実行できるようにします。このロールは AWSDataLifecycleManagerServiceRoleForAMIManagement AWS マネージドポリシーを使用します。

Amazon Data Lifecycle Manager コンソールを使用している場合、Amazon Data Lifecycle Manager は、スナップショットまたはクロスアカウントスナップショットコピーポリシーを初めて作成するときにAWSDataLifecycleManagerDefaultRoleサービスロールを自動的に作成し、EBS-backed AMIポリシーを初めて作成するときにAWSDataLifecycleManagerDefaultRoleForAMIManagementサービスロールを自動的に作成します。

コンソールを使用していない場合は、 create-default-role コマンドを使用してサービスロールを手動で作成できます。には--resource-typesnapshotを作成するか AWSDataLifecycleManagerDefaultRole、 を作成するimageかを指定します AWSDataLifecycleManagerDefaultRoleForAMIManagement。

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

デフォルトのサービスロールを削除したのち、再度作成する必要がある場合は、同じ手順でアカウントにロールを再作成できます。

Amazon Data Lifecycle Manager のカスタムサービスロール

デフォルトのサービスロールを使用する代わりに、必要なアクセス許可を持つカスタムIAMロールを作成し、ライフサイクルポリシーを作成するときにそれらを選択できます。

カスタム IAM ロールを作成するには
  1. 次のアクセス許可でロールを作成します。

    • スナップショットライフサイクルポリシーを管理するためのアクセス許可

      { "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", "ec2:DescribeAvailabilityZones" ], "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ユーザーガイド」の「ロールの作成」を参照してください。

  2. ロールに信頼関係を追加します。

    1. IAM コンソールで、[ロール] を選択します。

    2. 作成したロールを選択し、信頼関係を選択します。

    3. [信頼関係の編集] を選択して、次のポリシーを追加し、[信頼ポリシーの更新] を選択します。

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

      Confused Deputy Problem (混乱した使節の問題) から自分を守るために、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" } }