

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

# Amazon Data Lifecycle Manager 用の IAM サービスロール
<a name="service-role"></a>

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

Amazon Data Lifecycle Manager に渡すロールには、Amazon Data Lifecycle Manager がポリシー操作に関連するアクション (スナップショットと AMI の作成、スナップショットと AMI のコピー、スナップショットの削除、AMI の登録解除など) を実行できるようにするアクセス権限を持つ IAM ポリシーが必要です。Amazon Data Lifecycle Manager のポリシータイプごとに異なるアクセス権限が必要です。ロールには、Amazon Data Lifecycle Manager が信頼されたエンティティとして登録されている必要があります。これにより、Amazon Data Lifecycle Manager はロールを引き受けることができます。

**Topics**
+ [Amazon Data Lifecycle Manager のデフォルトのサービスロール](#default-service-roles)
+ [Amazon Data Lifecycle Manager のカスタムサービスロール](#custom-role)

## Amazon Data Lifecycle Manager のデフォルトのサービスロール
<a name="default-service-roles"></a>

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-backed AMIポリシーを最初に作成したときに、**AWSDataLifecycleManagerDefaultRoleForAMIManagement** サービスロールを自動的に作成します。

コンソールを使用していない場合は、サービスロールを手動で作成するには、[デフォルトロールの作成](https://docs.aws.amazon.com/cli/latest/reference/dlm/create-default-role.html)コマンドを実行します。この場合`--resource-type`を指定して`snapshot` AWSDatalifeCycleManagerDefaultRole を作成するか、または`image`AWSDatalifeCycleManagerDefaultRoleForAMIManagementを作成します。

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

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

## Amazon Data Lifecycle Manager のカスタムサービスロール
<a name="custom-role"></a>

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

**カスタム IAM ロールを作成するには**

1. 次のアクセス許可でロールを作成します。
   + スナップショットライフサイクルポリシーを管理するためのアクセス許可

------
#### [ JSON ]

****  

     ```
     {
         "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 ライフサイクルポリシーを管理するためのアクセス許可

------
#### [ JSON ]

****  

     ```
     {
         "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 ユーザーガイド* の[ロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html)を参照してください。

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

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

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

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

------
#### [ JSON ]

****  

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

------

      [Confused Deputy Problem (混乱した使節の問題)](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html) から自分を守るために、`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"
          }
      }
      ```