

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

# 必要なロール
<a name="aft-required-roles"></a>

一般に、ロールとポリシーは AWSの Identity and Access Management (IAM) の一部です。詳細については、「[AWS IAM ユーザーガイド](https://docs.aws.amazon.com//IAM/latest/UserGuide/introduction.html)」を参照してください。**

AFT は、AFT パイプラインのオペレーションをサポートするために、AFT 管理アカウントと AWS Control Tower 管理アカウントに複数の IAM のロールとポリシーを作成します。これらのロールは、最小特権アクセスモデルに基づいて作成されます。このモデルは、各ロールおよびポリシーで最小限必要なアクションとリソースのセットに対する許可を制限します。これらのロールとポリシーには、識別` managed_by:AFT`のために AWS タグ`key:value`ペアが割り当てられます。

これらの IAM ロールの他に、AFT は 3 つの重要な役割を作成します。
+ `AWSAFTAdmin` ロール
+ `AWSAFTExecution` ロール
+ `AWSAFTService` ロール

これらのロールについては、以降のセクションで説明します。

**AWSAFTAdmin ロールについての説明**

AFT をデプロイすると、`AWSAFTAdmin` ロールが AFT 管理アカウントで作成されます。このロールにより、AFT パイプラインは、AWS Control Tower および AFT でプロビジョニングされたアカウントで `AWSAFTExecution` ロールを引き受けることができるため、アカウントのプロビジョニングとカスタマイズに関連するアクションを実行できます。

`AWSAFTAdmin` ロールにアタッチされたインラインポリシー (JSON アーティファクト) は次のとおりです。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": [
                "arn:aws:iam::*:role/AWSAFTExecution",
                "arn:aws:iam::*:role/AWSAFTService"
            ]
        }
    ]
}
```

------

次の JSON アーティファクトは、`AWSAFTAdmin` ロールの信頼関係を示しています。プレースホルダー番号 `012345678901` は、AFT 管理アカウント ID 番号に置き換えられます。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::012345678901:root"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

**AWSAFTExecution ロールについての説明**

AFT をデプロイすると、`AWSAFTExecution` ロールが AFT 管理アカウントと AWS Control Tower 管理アカウントで作成されます。後ほど、AFT パイプラインが、AFT アカウントのプロビジョニング段階で、AFT でプロビジョニングされた各アカウントに `AWSAFTExecution` ロールを作成します。

 AFT は、最初に `AWSControlTowerExecution` ロールを使用して、指定されたアカウントに `AWSAFTExecution` ロールを作成します。`AWSAFTExecution` ロールを使用すると、AFT パイプラインは、AFT でプロビジョニングされたアカウントと共有アカウントに対して、AFT フレームワークのプロビジョニングとプロビジョニングのカスタマイズの段階で実行されるステップを実行できます。

**個別のロールは範囲を制限するのに役立つ**  
ベストプラクティスとして、カスタマイズ権限は、リソースの初期デプロイ時に許可されるアクセス許可とは別にしておきます。`AWSAFTService` ロールはアカウントのプロビジョニングを目的としており、`AWSAFTExecution` ロールは、アカウントのカスタマイズを目的としていることを忘れないようにしてください。この分離により、パイプラインの各フェーズで許可されるアクセス許可の範囲が制限されます。この区別は、AWS Control Tower の共有アカウントをカスタマイズする場合に特に重要です。共有アカウントには、請求の詳細やユーザー情報などの機密情報が含まれている場合があるためです。

`AWSAFTExecution` ロールのアクセス許可: **AdministratorAccess** – AWS マネージドポリシー 

次の JSON アーティファクトは、`AWSAFTExecution` ロールにアタッチされた IAM ポリシー (信頼関係) を示しています。プレースホルダー番号 `012345678901` は、AFT 管理アカウント ID 番号に置き換えられます。

`AWSAFTExecution` の信頼ポリシー

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::012345678901:role/AWSAFTAdmin"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

**AWSAFTService ロールについての説明**

`AWSAFTService` ロールは、共有アカウントと管理アカウントを含むすべてのマネージドアカウントに AFT リソースをデプロイします。リソースは、以前は、`AWSAFTExecution` ロールによってのみデプロイされていました。

`AWSAFTService` ロールは、プロビジョニング段階でリソースをデプロイするためにサービスインフラストラクチャで使用することを目的としており、`AWSAFTExecution` ロールは、カスタマイズのデプロイにのみ使用するためのものです。この方法でロールを引き受けると、各ステージでより詳細なアクセス制御を維持できます。

`AWSAFTService` ロールのアクセス許可: **AdministratorAccess** – AWS マネージドポリシー 

次の JSON アーティファクトは、`AWSAFTService` ロールにアタッチされた IAM ポリシー (信頼関係) を示しています。プレースホルダー番号 `012345678901` は、AFT 管理アカウント ID 番号に置き換えられます。

`AWSAFTService` の信頼ポリシー

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::012345678901:role/AWSAFTAdmin"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------