

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

# CodePipeline サービスロールを管理する
<a name="how-to-custom-role"></a>

サービスロールは、パイプラインで使用される AWS リソースへのアクセスを制御する 1 つ以上のポリシーで設定されます。このロールにさらにポリシーをアタッチしたり、ロールにアタッチされたポリシーを編集したり、 で他のサービスロールのポリシーを設定したりできます AWS。また、パイプラインへクロスアカウントアクセスを設定する際に、ポリシーをロールにアタッチすることもできます。

**重要**  
ポリシーステートメントを変更するか、他のポリシーをロールにアタッチすると、パイプラインの動作が停止することがあります。 のサービスロールは、必ず影響を理解した上で変更するようにしてください。パイプラインは、必ずサービスロールに変更を加えてからテストします。

**注記**  
コンソールでは、2018 年 9 月より前に作成されたサービスロールは、`oneClick_AWS-CodePipeline-Service_ID-Number` という名前で作成されています。  
2018 年 9 月以降に作成されたサービスロールは、サービスロール名の形式 `AWSCodePipelineServiceRole-Region-Pipeline_Name` を使用します。例えば、`MyFirstPipeline` という名前のパイプラインが `eu-west-2` にある場合、コンソールはロールとポリシー `AWSCodePipelineServiceRole-eu-west-2-MyFirstPipeline` の名前を付けます。

## CodePipeline のサービスロールポリシー
<a name="how-to-custom-role-policy"></a>

CodePipeline のサービスロールポリシーステートメントには、パイプラインを管理するための最小限必要なアクセス許可が含まれています。サービスロールのステートメントを編集して、使用していないリソースへのアクセスを削除または追加します。CodePipeline が各アクションに使用する最小限必要なアクセス許可については、適切なアクションリファレンスを参照してください。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowS3BucketAccess",
      "Effect": "Allow",
      "Action": [
        "s3:GetBucketVersioning",
        "s3:GetBucketAcl",
        "s3:GetBucketLocation"
      ],
      "Resource": [
        "arn:aws:s3:::[[pipeArtifactBucketNames]]"
      ],
      "Condition": {
        "StringEquals": {
          "aws:ResourceAccount": "{{accountId}}"
        }
      }
    },
    {
      "Sid": "AllowS3ObjectAccess",
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:PutObjectAcl",
        "s3:GetObject",
        "s3:GetObjectVersion",
        "s3:PutObjectTagging",
        "s3:GetObjectTagging",
        "s3:GetObjectVersionTagging"
      ],
      "Resource": [
        "arn:aws:s3:::[[pipeArtifactBucketNames]]/*"
      ],
      "Condition": {
        "StringEquals": {
          "aws:ResourceAccount": "{{accountId}}"
        }
      }
    }
  ]
}
```

------

**注記**  
ポリシーでは、ソースバケット内の S3 オブジェクトにタグがある場合、次のアクセス許可が必要です。  

```
s3:PutObjectTagging
s3:GetObjectTagging
s3:GetObjectVersionTagging
```

## CodePipeline サービスロールからアクセス許可を削除する
<a name="remove-permissions-from-policy"></a>

サービスロールのステートメントを編集して、使用していないリソースへのアクセスを削除します。例えば、いずれのパイプラインにも Elastic Beanstalk が含まれていない場合は、ポリシーステートメントを編集して Elastic Beanstalk リソースへのアクセスを許可するセクションを削除できます。

同様に、いずれのパイプラインにも CodeDeploy が含まれていない場合は、ポリシーステートメントを編集して CodeDeploy リソースへのアクセスを許可するセクションを削除できます。

```
    {
    "Action": [
        "codedeploy:CreateDeployment",
        "codedeploy:GetApplicationRevision",
        "codedeploy:GetDeployment",
        "codedeploy:GetDeploymentConfig",
        "codedeploy:RegisterApplicationRevision"
    ],
    "Resource": "*",
    "Effect": "Allow"
},
```

## CodePipeline サービスロールにアクセス許可を追加する
<a name="how-to-update-role-new-services"></a>

サービスロールのポリシーステートメントは、パイプラインで使用する前に、デフォルトのサービスロールのポリシーステートメントに含まれていない AWS のサービス のアクセス許可で更新する必要があります。

これは、パイプラインに使用するサービスロールが、 のサポートが に追加される前に作成された場合に特に重要です AWS のサービス。

以下の表は、他の AWS のサービスにサポートが追加された場合の例を示しています。


****  

| AWS のサービス | CodePipeline のサポート日付 | 
| --- | --- | 
| CodePipeline の呼び出しアクションのサポートが追加されました。「[CodePipeline 呼び出しアクションのサービスロールポリシーのアクセス許可](action-reference-PipelineInvoke.md#action-reference-PipelineInvoke-permissions-action)」を参照してください。 | 2025 年 3 月 14 日 | 
|  EC2 アクションのサポートが追加されました。「[EC2 デプロイアクションのサービスロールポリシーのアクセス許可](action-reference-EC2Deploy.md#action-reference-EC2Deploy-permissions-action)」を参照してください。 | 2025 年 2 月 21 日 | 
|  EKS アクションのサポートが追加されました。「[サービスロールのポリシーのアクセス許可](action-reference-EKS.md#action-reference-EKS-service-role)」を参照してください。 | 2025 年 2 月 20 日 | 
|  Amazon Elastic Container Registry の ECRBuildAndPublish アクションのサポートが追加されました。「[サービスロールのアクセス許可: `ECRBuildAndPublish` アクション](action-reference-ECRBuildAndPublish.md#edit-role-ECRBuildAndPublish)」を参照してください。 | 2024 年 11 月 22 日 | 
| Amazon Inspector の InspectorScan アクションのサポートが追加されました。「[サービスロールのアクセス許可: `InspectorScan` アクション](action-reference-InspectorScan.md#edit-role-InspectorScan)」を参照してください。 | 2024 年 11 月 22 日 | 
| コマンドアクションのサポートが追加されました。「[サービスロールのアクセス許可: コマンドアクション](action-reference-Commands.md#edit-role-Commands)」を参照してください。 | 2024 年 10 月 3 日 | 
| CloudFormation アクションのサポートが追加されました。「[サービスロールのアクセス許可: `CloudFormationStackSet` アクション](action-reference-StackSets.md#edit-role-cfn-stackset)」および「[サービスロールのアクセス許可: `CloudFormationStackInstances` アクション](action-reference-StackSets.md#edit-role-cfn-stackinstances)」を参照してください。 | 2020 年 12 月 30 日 | 
| CodeCommit フルクローン出力アーティファクト形式のサポートが追加されました。「[サービスロールのアクセス許可: CodeCommit アクション](action-reference-CodeCommit.md#edit-role-codecommit)」を参照してください。 | 2020 年 11 月 11 日 | 
| AWS CodeBuild バッチビルドアクションのサポートが追加されました。「[サービスロールのアクセス許可: CodeCommit アクション](action-reference-CodeCommit.md#edit-role-codecommit)」を参照してください。 | 2020 年 7 月 30 日 | 
| AWS AppConfig アクションのサポートが追加されました。「[サービスロールのアクセス許可: `AppConfig` アクション](action-reference-AppConfig.md#edit-role-appconfig)」を参照してください。 | 2020 年 6 月 22 日 | 
| AWS Step Functions アクションのサポートが追加されました。「[サービスロールのアクセス許可: `StepFunctions` アクション](action-reference-StepFunctions.md#edit-role-stepfunctions)」を参照してください。 | 2020 年 5 月 27 日 | 
| AWS CodeStar Connections アクションのサポートが追加されました。「[サービスロールのアクセス許可: CodeConnections アクション](action-reference-CodestarConnectionSource.md#edit-role-connections)」を参照してください。 | 2019 年 12 月 18 日 | 
| S3 デプロイアクションのサポートが追加されました。「[サービスロールのアクセス許可: S3 デプロイアクション](action-reference-S3Deploy.md#edit-role-s3deploy)」を参照してください。 | 2019 年 1 月 16 日 | 
| CodeDeployToECS アクションのサポートが追加されました。「[サービスロールのアクセス許可: `CodeDeployToECS` アクション](action-reference-ECSbluegreen.md#edit-role-codedeploy-ecs)」を参照してください。 | 2018 年 11 月 27 日 | 
| Amazon ECR アクションのサポートが追加されました。「[サービスロールのアクセス許可: Amazon ECR アクション](action-reference-ECR.md#edit-role-ecr)」を参照してください。 | 2018 年 11 月 27 日 | 
| Service Catalog アクションのサポートが追加されました。「[サービスロールのアクセス許可: Service Catalog アクション](action-reference-ServiceCatalog.md#edit-role-servicecatalog)」を参照してください。 | 2018 年 10 月 16 日 | 
| AWS Device Farm アクションのサポートが追加されました。「[サービスロールのアクセス許可: AWS Device Farm アクション](action-reference-DeviceFarm.md#edit-role-devicefarm)」を参照してください。 | 2018 年 7 月 19 日 | 
| Amazon ECS アクションのサポートが追加されました。「[サービスロールのアクセス許可: Amazon ECS 標準アクション](action-reference-ECS.md#edit-role-ecs)」を参照してください。 | 2017 年 12 月 12 日 / 2017 年 7 月 21 日から開始されたタグ付け承認のオプトインのための更新 | 
| CodeCommit アクションのサポートが追加されました。「[サービスロールのアクセス許可: CodeCommit アクション](action-reference-CodeCommit.md#edit-role-codecommit)」を参照してください。 | 2016 年 4 月 18 日 | 
| AWS OpsWorks アクションのサポートが追加されました。「[サービスロールのアクセス許可: AWS OpsWorks アクション](action-reference-OpsWorks.md#edit-role-opsworks)」を参照してください。 | 2016 年 6 月 2 日 | 
| CloudFormation アクションのサポートが追加されました。「[サービスロールのアクセス許可: CloudFormation アクション](action-reference-CloudFormation.md#edit-role-cloudformation)」を参照してください。 | 2016 年 11 月 3 日 | 
| AWS CodeBuild アクションのサポートが追加されました。「[サービスロールのアクセス許可: CodeBuild アクション](action-reference-CodeBuild.md#edit-role-codebuild)」を参照してください。 | 2016 年 12 月 1 日 | 
| Elastic Beanstalk アクションのサポートが追加されました。「[サービスロールのアクセス許可: `ElasticBeanstalk` のデプロイアクション](action-reference-Beanstalk.md#edit-role-beanstalk)」を参照してください。 | 初回サービス起動 | 
| CodeDeploy アクションのサポートが追加されました。「[サービスロールのアクセス許可: AWS CodeDeploy アクション](action-reference-CodeDeploy.md#edit-role-codedeploy)」を参照してください。 | 初回サービス起動 | 
| S3 ソースアクションのサポートが追加されました。「[サービスロールのアクセス許可: S3 ソースアクション](action-reference-S3.md#edit-role-s3source)」を参照してください。 | 初回サービスの起動 | 

サポートされているサービスのアクセス許可を追加するには、次の手順に従います。

 

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. IAM コンソールのナビゲーションペインで、[**ロール**] を選択し、ロールのリストから `AWS-CodePipeline-Service` ロール を選択します。

1. [**アクセス権限**] タブの [**インラインポリシー**] で、サービスロールポリシーの列の [**ポリシーの編集**] を選択します。

1. [**Policy Document**] ボックスに必要なアクセス許可を追加します。
**注記**  
IAM ポリシーを作成するとき、最小限の特権を認めるという標準的なセキュリティアドバイスに従いましょう。そうすれば、タスクを実行するというリクエストのアクセス許可のみを認めることができます。一部の API コールはリソースベースのアクセス許可をサポートしており、アクセスを制限できます。たとえば、この場合、`DescribeTasks` および `ListTasks` を呼び出す際のアクセス許可を制限するために、ワイルドカード文字 (\$1) をリソース ARN またはワイルドカード文字 (\$1) を含むリソース ARN に置き換えることができます。最小権限アクセスを付与するポリシーの作成の詳細については、[https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) を参照してください。

1. **[Review policy]** (ポリシーの確認) を選択して、ポリシーにエラーがないことを確認します。ポリシーにエラーがなければ、**ポリシーの適用** を選択します。