IAM サービスロール - Amazon EBS

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

IAM サービスロール

AWS Identity and Access Management (IAM) ロールは、ID で実行できることとできないことを決定するアクセス権限ポリシーを持つ AWS ID であるという点で、ユーザーと同様です。 AWSただし、ユーザーは 1 人の特定の人に一意に関連付けられますが、ロールはそれを必要とする任意の人が引き受けるようになっています。サービスロールは、 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::account_id:role/service-role/AWSDataLifecycleManagerDefaultRole です。ロールがを使用して作成された場合 AWS CLI、ARN 形式はですarn:aws:iam::account_id:role/AWSDataLifecycleManagerDefaultRole

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

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

コンソールを使用していない場合は、コマンドを使用してサービスロールを手動で作成できます。create-default-roleでは--resource-type、「作成 AWSDataLifecycleManagerDefaultRole」または「作成image」を指定しますsnapshot 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" ], "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" } }