

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建立 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 管理主控台 並開啟 CodePipeline 主控台，網址為 https：//[http://console.aws.amazon.com/codesuite/codepipeline/home](https://console.aws.amazon.com/codesuite/codepipeline/home)。

   選擇 **Create pipeline (建立管道)** 並完成管道建立精靈中的 **Step 1: Choose pipeline settings (步驟 1：選擇管道設定)** 頁面。
**注意**  
在您建立管道後，便無法更改其名稱。如需其他限制的相關資訊，請參閱 [AWS CodePipeline 中的配額](limits.md)。

1. 在**服務角色**中，選擇**新服務角色**，以允許 CodePipeline 在 IAM 中建立新的服務角色。

1. 完成管道建立。您的管道服務角色可在 IAM 角色清單中檢視，而且您可以透過使用 AWS CLI 執行 `get-pipeline`命令來檢視與管道相關聯的服務角色 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 AWS 或 建立管道時，請使用服務角色 ARN CloudFormation。