

AWS Data Pipeline 不再提供給新客戶。的現有客戶 AWS Data Pipeline 可以繼續正常使用服務。[進一步了解](https://aws.amazon.com/blogs/big-data/migrate-workloads-from-aws-data-pipeline/)

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

# 的 IAM 角色 AWS Data Pipeline
<a name="dp-iam-roles"></a>

AWS Data Pipeline 使用 AWS Identity and Access Management 角色。連接至 IAM 角色的許可政策會決定 AWS Data Pipeline 您的應用程式可執行哪些動作，以及他們可以存取哪些 AWS 資源。如需詳細資訊，請參閱《IAM 使用者指南》**中的 [IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)。

AWS Data Pipeline 需要兩個 IAM 角色：
+ **管道角色**控制對 AWS 資源的 AWS Data Pipeline 存取。在管道物件定義中， `role` 欄位會指定此角色。
+ **EC2 執行個體角色**控制在 EC2 執行個體上執行的應用程式必須存取 AWS 資源的存取權，包括 Amazon EMR 叢集中的 EC2 執行個體。在管道物件定義中， `resourceRole` 欄位會指定此角色。

**重要**  
如果您在 2022 年 10 月 3 日之前使用具有預設角色的 AWS Data Pipeline 主控台建立管道， `DataPipelineDefaultRole`會為您 AWS Data Pipeline 建立 ，並將 `AWSDataPipelineRole`受管政策連接至角色。自 2022 年 10 月 3 日起， `AWSDataPipelineRole`受管政策已棄用，且必須使用 主控台為管道指定管道角色。  
我們建議您檢閱現有的管道，並判斷 `DataPipelineDefaultRole` 是否與管道相關聯，以及 是否`AWSDataPipelineRole`連接到該角色。若是如此，請檢閱此政策允許的存取權，以確保其符合您的安全需求。視需要新增、更新或取代連接到此角色的政策和政策陳述式。或者，您可以更新管道，以使用您透過不同許可政策建立的角色。

## AWS Data Pipeline 角色的範例許可政策
<a name="dp-role-permissions-policy-examples"></a>

每個角色都連接一或多個許可政策，以決定角色可存取 AWS 的資源和角色可執行的動作。本主題提供管道角色的範例許可政策。它也提供 的內容`AmazonEC2RoleforDataPipelineRole`，這是預設 EC2 執行個體角色 的受管政策`DataPipelineDefaultResourceRole`。

### 管道角色許可政策範例
<a name="dp-role-example-policy"></a>

以下範例政策的範圍是允許 AWS Data Pipeline 需要 以 Amazon EC2 和 Amazon EMR 資源執行管道的基本函數。它也提供許可來存取許多管道所需的其他 AWS 資源，例如 Amazon Simple Storage Service 和 Amazon Simple Notification Service。如果管道中定義的物件不需要 AWS 服務的資源，強烈建議您移除存取該服務的許可。例如，如果您的管道未定義 [DynamoDBDataNode](dp-object-dynamodbdatanode.md)或使用 [SnsAlarm](dp-object-snsalarm.md)動作，我們建議您移除這些動作的允許陳述式。
+ 將 取代`111122223333`為 AWS 您的帳戶 ID。
+ `NameOfDataPipelineRole` 將 取代為管道角色的名稱 （此政策所連接的角色）。
+ `NameOfDataPipelineResourceRole` 將 取代為 EC2 執行個體角色的名稱。
+ `us-west-1` 將 取代為適合您應用程式的 區域。

### EC2 執行個體角色的預設受管政策
<a name="dp-resource-role-example-policy"></a>

的內容`AmazonEC2RoleforDataPipelineRole`如下所示。這是連接到 的預設資源角色的 受管政策 AWS Data Pipeline`DataPipelineDefaultResourceRole`。當您定義管道的資源角色時，建議您從此許可政策開始，然後移除非必要的 AWS 服務動作許可。

政策第 3 版隨即顯示，這是撰寫本文時的最新版本。使用 IAM 主控台檢視政策的最新版本。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [{
      "Effect": "Allow",
      "Action": [
        "cloudwatch:*",
        "datapipeline:*",
        "dynamodb:*",
        "ec2:Describe*",
        "elasticmapreduce:AddJobFlowSteps",
        "elasticmapreduce:Describe*",
        "elasticmapreduce:ListInstance*",
        "elasticmapreduce:ModifyInstanceGroups",
        "rds:Describe*",
        "redshift:DescribeClusters",
        "redshift:DescribeClusterSecurityGroups",
        "s3:*",
        "sdb:*",
        "sns:*",
        "sqs:*"
      ],
      "Resource": ["*"]
    }]
}
```

------

## 為 建立 IAM 角色 AWS Data Pipeline 並編輯角色許可
<a name="dp-iam-roles-new"></a>

使用下列程序建立 AWS Data Pipeline 使用 IAM 主控台的角色。程序包含兩個步驟。首先，您可以建立連接到角色的許可政策。接著，建立角色並連接政策。建立角色之後，您可以透過連接和分離許可政策來變更角色的許可。

**注意**  
當您 AWS Data Pipeline 使用主控台建立 角色時，IAM 會建立並連接角色所需的適當信任政策。

**建立許可政策以搭配 的角色使用 AWS Data Pipeline**

1. 在 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 中開啟 IAM 主控台。

1. 在導覽窗格中，選擇 **Policies (政策)**，然後選擇 **Create policy (建立政策)**。

1. <a name="step3"></a>選擇 **JSON** 標籤。

1. 如果您要建立管道角色，請在 中複製並貼上政策範例的內容[管道角色許可政策範例](#dp-role-example-policy)，並根據您的安全需求進行編輯。或者，如果您要建立自訂 EC2 執行個體角色，請對 中的範例執行相同的 [EC2 執行個體角色的預設受管政策](#dp-resource-role-example-policy)。

1. 選擇**檢閱政策**。

1. 輸入政策的名稱，例如 `MyDataPipelineRolePolicy`- 和選用的**描述**，然後選擇**建立政策**。

1. 請記下政策的名稱。建立角色時需要它。

**為 建立 IAM 角色 AWS Data Pipeline**

1. 在以下網址開啟 IAM 主控台：[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在導覽窗格中，選擇**角色**，然後選擇**建立角色**。

1. 在**選擇使用案例**下，選擇**資料管道**。

1. 在**選取您的使用案例**下，執行下列其中一項操作：
   + 選擇 以`Data Pipeline`建立管道角色。
   + 選擇 `EC2 Role for Data Pipeline` 以建立資源角色。

1. 選擇**下一步：許可**。

1. 如果 AWS Data Pipeline 列出 的預設政策，請繼續以下步驟來建立角色，然後根據下一個程序中的指示進行編輯。否則，請輸入您在上述程序中建立的政策名稱，然後從清單中選擇。

1. 選擇**下一步：標籤**，輸入要新增至角色的任何標籤，然後選擇**下一步：檢閱**。

1. 輸入角色的名稱，例如`MyDataPipelineRole`，以及選用的**描述**，然後選擇**建立角色**。

**連接或分離 IAM 角色的許可政策 AWS Data Pipeline**

1. 前往 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 在導覽窗格中，選擇**角色**

1. 在搜尋方塊中，開始輸入您要編輯的角色名稱，例如 **DataPipelineDefaultRole** 或 **MyDataPipelineRole**，然後從清單中選擇**角色名稱**。

1. 在**許可**索引標籤上，執行下列動作：
   + 若要分離許可政策，請在**許可政策**下，選擇政策項目最右側的移除按鈕。在出現確認提示時，選擇**分離**。
   + 若要連接您先前建立的政策，請選擇**連接政策**。在搜尋方塊中，開始輸入您要編輯的政策名稱，從清單中選擇，然後選擇**連接政策**。

## 變更現有管道的角色
<a name="dp-iam-change-console"></a>

如果您想要將不同的管道角色或資源角色指派給管道，您可以在 AWS Data Pipeline 主控台中使用架構師編輯器。

**使用主控台編輯指派給管道的角色**

1. 在 https：//[https://console.aws.amazon.com/datapipeline/](https://console.aws.amazon.com/datapipeline/) 開啟 AWS Data Pipeline 主控台。

1. 從清單中選擇管道，然後選擇**動作**、**編輯**。

1. 在架構師編輯器的右窗格中，選擇**其他**。

1. 從**資源角色**和**角色**清單中，選擇要指派 AWS Data Pipeline 的角色，然後選擇**儲存**。