

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

# CodePipeline サービスロールを作成する
<a name="pipelines-create-service-role"></a>

パイプラインの作成時に、サービスロールを作成するか、既存のサービスロールを使用します。

CodePipeline コンソールまたは を使用して AWS CLI 、CodePipeline サービスロールを作成できます。サービスロールは、パイプラインを作成するために必要であり、パイプラインは必ず作成元のサービスロールに関連付けられます。

CLI AWS を使用してパイプラインを作成する前に、パイプラインの CodePipeline サービスロールを作成する必要があります。サービスロールとポリシーが指定されている CloudFormation テンプレートの例については、「」のチュートリアルを参照してください[チュートリアル: AWS CloudFormation デプロイアクションの変数を使用するパイプラインを作成する](tutorials-cloudformation-action.md)。

サービスロールは AWS マネージドロールではありませんが、最初にパイプライン作成用に作成され、新しいアクセス許可がサービスロールポリシーに追加されると、パイプラインのサービスロールを更新する必要がある場合があります。サービスロールを使用してパイプラインを作成すると、このパイプラインに別のサービスロールを適用することはできません。推奨されるポリシーをサービスロールにアタッチします。

サービスロールの詳細については、「[CodePipeline サービスロールを管理する](how-to-custom-role.md)」を参照してください。

# CodePipeline サービスロールを作成する (コンソール)
<a name="pipelines-create-service-role-console"></a>

コンソールを使用してパイプラインを作成すると、パイプライン作成ウィザードで CodePipeline サービスロールを作成します。

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

   [**パイプラインの作成**] を選択し、パイプライン作成ウィザードの [**ステップ 1: パイプラインの設定を選択する**] を完了します。
**注記**  
パイプラインを作成したら、その名前を変更することはできません。その他の制限についての詳細については、「[AWS の CodePipeline 中のクォータ](limits.md)」を参照してください。

1. [**サービスロール**] で、[**新しいサービスロール**] をクリックして、CodePipeline の IAM での新しいサービスロールの作成を許可します。

1. パイプラインの作成を完了します。パイプラインのサービスロールを使用して IAM ロールを一覧表示できます。また、`get-pipeline` CLI で AWS コマンドを実行して、パイプラインに関連付けられているサービスロールの ARN を表示できます。

# CodePipeline サービスロールを作成する (CLI)
<a name="pipelines-create-service-role-cli"></a>

CLI または AWS を使用してパイプラインを作成する前に CloudFormation、パイプラインの CodePipeline サービスロールを作成し、サービスロールポリシーと信頼ポリシーをアタッチする必要があります。CLI を使用してサービスロールを作成するには、以下の手順を使用して、まず CLI コマンドを実行するディレクトリに信頼ポリシー JSON とロールポリシー JSON を別々のファイルとして作成します。

**注記**  
管理者ユーザーのみにサービスロールの作成を許可することをお勧めします。ロールの作成とポリシーのアタッチを許可されたユーザーは、自分のアクセス許可をエスカレートできます。代わりに、彼らが必要とするロールの作成のみを許可したポリシーを作成するか、彼らの代わりに、管理者にサービスロールを作成させます。

1. ターミナルウィンドウで以下のコマンドを入力して、`TrustPolicy.json` という名前のファイルを作成し、そのファイルにロールポリシー JSON を貼り付けます。この例では VIM を使用します。

   ```
   vim TrustPolicy.json
   ```

1. そのファイルに次の JSON を貼り付けます。

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

****  

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

------

   ファイルを保存して終了するには、次の VIM コマンドを入力します。

   ```
   :wq
   ```

1. ターミナルウィンドウで以下のコマンドを入力して、`RolePolicy.json` という名前のファイルを作成し、そのファイルにロールポリシー JSON を貼り付けます。この例では VIM を使用します。

   ```
   vim RolePolicy.json
   ```

1. JSON ポリシーをファイルに貼り付けます。「[CodePipeline のサービスロールポリシー](how-to-custom-role.md#how-to-custom-role-policy)」に記載されている最小サービスロールポリシーを使用します。さらに、使用する予定のアクションに基づいて、適切なアクセス許可をサービスロールに追加します。アクションのリスト、および各アクションに必要なサービスロールのアクセス許可へのリンクについては、「[CodePipeline サービスロールにアクセス許可を追加する](how-to-custom-role.md#how-to-update-role-new-services)」を参照してください。

   `Resource` フィールドのリソースレベルまで、アクセス許可を可能な限り絞り込みます。

   ファイルを保存して終了するには、次の VIM コマンドを入力します。

   ```
   :wq
   ```

1. 次のコマンドを入力して、そのロールを作成し、ロールポリシーをアタッチします。ポリシー名の形式は、通常、ロール名の形式と同じです。この例では、ロール名 `MyRole` と、別のファイルとして作成されたポリシー `TrustPolicy` を使用します。

   ```
   aws iam create-role --role-name MyRole --assume-role-policy-document file://TrustPolicy.json
   ```

1. 次のコマンドを入力してロールポリシーを作成し、ロールにアタッチします。ポリシー名の形式は、通常、ロール名の形式と同じです。この例では、ロール名 `MyRole` と、別のファイルとして作成されたポリシー `MyRole` を使用します。

   ```
   aws iam put-role-policy --role-name MyRole --policy-name RolePolicy --policy-document file://RolePolicy.json
   ```

1. 作成されたロール名と信頼ポリシーを表示するには、`MyRole` という名前のロールに対して次のコマンドを入力します。

   ```
   aws iam get-role --role-name MyRole
   ```

1. CLI または でパイプラインを作成するときは、サービスロール ARN AWS を使用します CloudFormation。