

サポート終了通知: 2026 年 10 月 7 日、 AWS はサポートを終了します AWS Proton。2026 年 10 月 7 日以降、 AWS Proton コンソールまたは AWS Proton リソースにアクセスできなくなります。デプロイされたインフラストラクチャはそのまま残ります。詳細については、[AWS Proton 「サービス廃止と移行ガイド](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html)」を参照してください。

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

# AWS Proton IAM サービスロールポリシーの例
<a name="security_iam_service-role-policy-examples"></a>

管理者は、環境テンプレートとサービステンプレートで定義されているように が AWS Proton 作成するリソースを所有および管理します。IAM サービスロールをアカウントにアタッチ AWS Proton して、 がユーザーに代わってリソースを作成できるようにします。管理者は、 がアプリケーションを AWS Proton サービスとして AWS Proton 環境に AWS Proton デプロイするときに、開発者が後で所有および管理しているリソースの IAM ロールと AWS Key Management Service キーを提供します。 AWS KMS およびデータ暗号化の詳細については、「」を参照してください[でのデータ保護 AWS Proton](data-protection.md)。

サービスロールは、 がユーザーに代わって リソースを呼び出す AWS Proton ことができる Amazon Web Services (IAM) ロールです。サービスロールを指定する場合、 AWS Proton はロールの認証情報を使用します。サービスロールを使用して、 AWS Proton が実行できるアクションを明示的に指定します。

IAM サービスで、サービスロールと権限ポリシーを作成します。サービスロールの作成の詳細については、*IAM ユーザーガイド*の[「 AWS サービスにアクセス許可を委任するロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)」を参照してください。

## AWS Proton を使用してプロビジョニングするための サービスロール CloudFormation
<a name="proton-svc-role"></a>

プラットフォームチームのメンバーは、管理者として AWS Proton サービスロールを作成し、環境を環境の CloudFormation サービスロール ([CreateEnvironment](https://docs.aws.amazon.com/proton/latest/APIReference/API_CreateEnvironment.html) API アクションの `protonServiceRoleArn`パラメータ) として作成 AWS Proton するときに に提供できます。このロールにより AWS Proton 、 は、環境またはそこで実行されているサービスインスタンスが AWSマネージドプロビジョニングを使用する場合に、ユーザーに代わって他の のサービスを API コールし、インフラストラクチャ AWS CloudFormation をプロビジョニングできます。

 AWS Proton サービスロールには、次の IAM ロールと信頼ポリシーを使用することをお勧めします。 AWS Proton コンソールを使用して環境を作成し、新しいロールを作成する場合、これは が作成するサービスロール AWS Proton に追加するポリシーです。このポリシーのアクセス許可をスコープダウンする場合は、 が`Access Denied`エラーで AWS Proton 失敗することに注意してください。

**重要**  
次の例に示すポリシーは、テンプレートをアカウントに登録できるすべてのユーザーに管理者権限を付与するので注意してください。 AWS Proton テンプレートで定義するリソースがわからないため、これらのポリシーには広範なアクセス許可があります。したがって、環境にデプロイする特定のリソースに対する権限は、範囲を絞り込むことをお勧めします。

### AWS Proton のサービスロールポリシーの例 CloudFormation
<a name="proton-svc-role.details"></a>

を AWS アカウント ID `{{123456789012}}`に置き換えます。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudformation:CancelUpdateStack",
        "cloudformation:ContinueUpdateRollback",
        "cloudformation:CreateChangeSet",
        "cloudformation:CreateStack",
        "cloudformation:DeleteChangeSet",
        "cloudformation:DeleteStack",
        "cloudformation:DescribeChangeSet",
        "cloudformation:DescribeStackDriftDetectionStatus",
        "cloudformation:DescribeStackEvents",
        "cloudformation:DescribeStackResourceDrifts",
        "cloudformation:DescribeStacks",
        "cloudformation:DetectStackResourceDrift",
        "cloudformation:ExecuteChangeSet",
        "cloudformation:ListChangeSets",
        "cloudformation:ListStackResources",
        "cloudformation:UpdateStack"
      ],
      "Resource": "arn:aws:cloudformation:*:{{123456789012}}:stack/AWSProton-*"
    },
    {
      "Effect": "Allow",
      "NotAction": [
        "organizations:*",
        "account:*"
      ],
      "Resource": "*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:CalledVia": [
            "cloudformation.amazonaws.com"
          ]
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "organizations:DescribeOrganization",
        "account:ListRegions"
      ],
      "Resource": "*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:CalledVia": [
            "cloudformation.amazonaws.com"
          ]
        }
      }
    }
  ]
}
```

------

### AWS Proton サービス信頼ポリシー
<a name="proton-svc-role.trust.details"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Sid": "ServiceTrustRelationshipWithConfusedDeputyPrevention",
    "Effect": "Allow",
    "Principal": {
      "Service": "proton.amazonaws.com"
    },
    "Action": "sts:AssumeRole",
    "Condition": {
      "StringEquals": {
        "aws:SourceAccount": "{{123456789012}}"
      },
      "ArnLike": {
        "aws:SourceArn": "arn:aws:proton:*:{{123456789012}}:environment/*"
      }
    }
  }
}
```

------

### スコープ AWSダウンマネージドプロビジョニングサービスロールポリシー
<a name="proton-svc-role.scoped-down.details"></a>

以下は、S3 リソースのプロビジョニングに AWS Proton サービスのみが必要な場合に使用できる、スコープダウンされた AWS Proton サービスロールポリシーの例です。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudformation:CancelUpdateStack",
        "cloudformation:ContinueUpdateRollback",
        "cloudformation:CreateChangeSet",
        "cloudformation:CreateStack",
        "cloudformation:DeleteChangeSet",
        "cloudformation:DeleteStack",
        "cloudformation:DescribeChangeSet",
        "cloudformation:DescribeStackDriftDetectionStatus",
        "cloudformation:DescribeStackEvents",
        "cloudformation:DescribeStackResourceDrifts",
        "cloudformation:DescribeStacks",
        "cloudformation:DetectStackResourceDrift",
        "cloudformation:ExecuteChangeSet",
        "cloudformation:ListChangeSets",
        "cloudformation:ListStackResources",
        "cloudformation:UpdateStack"
      ],
      "Resource": "arn:aws:cloudformation:*:{{123456789012}}:stack/AWSProton-*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:*"
      ],
      "Resource": "*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:CalledVia": [
            "cloudformation.amazonaws.com"
          ]
        }
      }
    }
  ]
}
```

------

## AWS Proton CodeBuild プロビジョニングのサービスロール
<a name="codebuild-proton-svc-role"></a>

プラットフォームチームのメンバーは、管理者として AWS Proton サービスロールを作成し、環境を環境の CodeBuild サービスロール ([CreateEnvironment](https://docs.aws.amazon.com/proton/latest/APIReference/API_CreateEnvironment.html) API アクションの `codebuildRoleArn`パラメータ) として作成 AWS Proton するときに に提供できます。このロールは AWS Proton 、環境またはそこで実行されているサービスインスタンスが CodeBuild プロビジョニングを使用してインフラストラクチャをプロビジョニングするときに、 がユーザーに代わって他の サービスを API コールすることを許可します。

 AWS Proton コンソールを使用して環境を作成し、新しいロールを作成する場合、 は、作成したサービスロールに管理者権限を持つポリシー AWS Proton を追加します。独自のロールを作成し、アクセス許可の範囲を絞り込むときは、 `Access Denied` エラーで が AWS Proton 失敗することに注意してください。

**重要**  
が作成するロールに AWS Proton アタッチするポリシーは、テンプレートをアカウントに登録できるすべてのユーザーに管理者権限を付与することに注意してください。 AWS Proton テンプレートで定義するリソースがわからないため、これらのポリシーには広範なアクセス許可があります。したがって、環境にデプロイする特定のリソースに対する権限は、範囲を絞り込むことをお勧めします。

### AWS Proton CodeBuild のサービスロールポリシーの例
<a name="codebuild-proton-svc-role.details"></a>

次の例では、CodeBuild が AWS Cloud Development Kit (AWS CDK)でリソースをプロビジョニングするための権限のあなたは、管理者として サービスロールを作成しますが、そのロールは環境を提供します。

を AWS アカウント ID `{{123456789012}}`に置き換えます。

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

****  

```
 {
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "logs:CreateLogStream",
        "logs:CreateLogGroup",
        "logs:PutLogEvents"
      ],
      "Resource": [
        "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:/aws/codebuild/AWSProton-   Shell-*",
        "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:/aws/codebuild/AWSProton-   Shell-*:*"
      ],
      "Effect": "Allow"
    },
    {
      "Action": "proton:NotifyResourceDeploymentStatusChange",
      "Resource": "arn:aws:proton:{{us-east-1}}:{{123456789012}}:*",
      "Effect": "Allow"
    },
    {
      "Action": "sts:AssumeRole",
      "Resource": [
        "arn:aws:iam::{{123456789012}}:role/cdk-*-deploy-role-*",
        "arn:aws:iam::{{123456789012}}:role/cdk-*-file-publishing-role-*"
      ],
      "Effect": "Allow"
    }
  ]
}
```

------

### AWS Proton CodeBuild 信頼ポリシー
<a name="codebuild-proton-svc-role.trust.details"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Sid": "CodeBuildTrustRelationshipWithConfusedDeputyPrevention",
    "Effect": "Allow",
    "Principal": {
      "Service": "codebuild.amazonaws.com"
    },
    "Action": "sts:AssumeRole",
    "Condition": {
      "StringEquals": {
        "aws:SourceAccount": "{{123456789012}}"
      },
      "ArnLike": {
        "aws:SourceArn": "arn:aws:proton:*:{{123456789012}}:environment/*"
      }
    }
  }
}
```

------

## AWS Proton パイプラインサービスロール
<a name="codepipeline-proton-svc-role"></a>

サービスパイプラインをプロビジョニングするには、 に他の サービスへの API コールを行うためのアクセス許可 AWS Proton が必要です。必要なサービスロールは、環境の作成時に指定するサービスロールと似ています。ただし、パイプラインを作成するためのロールは AWS アカウント内のすべてのサービス間で共有され、これらのロールを コンソールで、または [UpdateAccountSettings](https://docs.aws.amazon.com/proton/latest/APIReference/API_UpdateAccountSettings.html) API アクションを通じて**アカウント設定**として指定します。

 AWS Proton コンソールを使用してアカウント設定を更新し、 CloudFormation または CodeBuild サービスロールのいずれかの新しいロールを作成する場合、 が作成するサービスロール AWS Proton に追加するポリシーは、前のセクションで説明したポリシー、[AWSマネージドプロビジョニングロール](#proton-svc-role)および と同じです[CodeBuild プロビジョニングロール](#codebuild-proton-svc-role)。このポリシーのアクセス許可をスコープダウンする場合、 は`Access Denied`エラーで AWS Proton 失敗することに注意してください。

**重要**  
前のセクションのポリシー例では、あなたのアカウントにテンプレートを登録できるすべての人に管理者権限が与えられるので注意してください。 AWS Proton テンプレートで定義するリソースがわからないため、これらのポリシーには広範なアクセス許可があります。したがって、パイプラインにデプロイする特定のリソースに対する権限は、範囲を絞り込むことをお勧めします。

## AWS Proton コンポーネントロール
<a name="proton-custom-comp-role"></a>

プラットフォームチームのメンバーは、管理者として AWS Proton サービスロールを作成し、環境を環境の CloudFormation コンポーネントロール ([CreateEnvironment](https://docs.aws.amazon.com/proton/latest/APIReference/API_CreateEnvironment.html) API アクションの `componentRoleArn`パラメータ) として作成 AWS Proton するときに に提供できます。このロールは、直接定義したコンポーネントがプロビジョニングできるインフラストラクチャの範囲を絞り込みます。コンポーネントの詳細については、「[AWS Proton コンポーネント](ag-components.md)」を参照してください。

以下のポリシー例では、Amazon Simple Storage Service (Amazon S3) バケットと関連するアクセスポリシーをプロビジョニングする、直接定義コンポーネントを作成することをサポートします。

### AWS Proton コンポーネントロールポリシーの例
<a name="proton-custom-comp-role.details"></a>

を AWS アカウント ID `{{123456789012}}`に置き換えます。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudformation:CancelUpdateStack",
        "cloudformation:CreateChangeSet",
        "cloudformation:DeleteChangeSet",
        "cloudformation:DescribeStacks",
        "cloudformation:ContinueUpdateRollback",
        "cloudformation:DetectStackResourceDrift",
        "cloudformation:DescribeStackResourceDrifts",
        "cloudformation:DescribeStackEvents",
        "cloudformation:CreateStack",
        "cloudformation:DeleteStack",
        "cloudformation:UpdateStack",
        "cloudformation:DescribeChangeSet",
        "cloudformation:ExecuteChangeSet",
        "cloudformation:ListChangeSets",
        "cloudformation:ListStackResources"
      ],
      "Resource": "arn:aws:cloudformation:*:{{123456789012}}:stack/AWSProton-*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:CreateBucket",
        "s3:DeleteBucket",
        "s3:GetBucket*",
        "iam:CreatePolicy",
        "iam:DeletePolicy",
        "iam:GetPolicy",
        "iam:ListPolicyVersions",
        "iam:DeletePolicyVersion"
      ],
      "Resource": "*",
      "Condition": {
        "ForAnyValue:StringEquals": {
          "aws:CalledVia": "cloudformation.amazonaws.com"
        }
      }
    }
  ]
}
```

------

### AWS Proton コンポーネントの信頼ポリシー
<a name="proton-custom-comp-role.trust.details"></a>

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": {
    "Sid": "ServiceTrustRelationshipWithConfusedDeputyPrevention",
    "Effect": "Allow",
    "Principal": {
      "Service": "proton.amazonaws.com"
    },
    "Action": "sts:AssumeRole",
    "Condition": {
      "StringEquals": {
        "aws:SourceAccount": "{{123456789012}}"
      },
      "ArnLike": {
        "aws:SourceArn": "arn:aws:proton:*:{{123456789012}}:environment/*"
      }
    }
  }
}
```

------