

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

# 步驟 2：為 AWS Glue 建立 IAM 角色
<a name="create-an-iam-role"></a>

您需要授予 AWS Glue 在代為呼叫其他服務時可擔任之 IAM 角色的許可。這包括存取 Amazon S3 的任何來源、目標、指令碼和使用於 AWS Glue 的臨時目錄。爬蟲程式、工作和開發端點皆需要許可。

您可以使用 AWS Identity and Access Management (IAM) 提供這些許可。新增政策至傳送到 AWS Glue 的 IAM 角色。

****在任務編輯器中建立 IAM 角色****

1. 當您在AWS Glue主控台中建立任務時，請尋找角色區段。

1. 選擇 **Create new role** (建立新角色)。

1. 會開啟內嵌角色建立表單，讓您：
   + 指定**角色名稱**，例如 `AWSGlueServiceRoleDefault`。
   + `AWSGlueServiceRole` 系統會自動選取 受管政策。
   + 檢閱信任政策以擔任角色。
   + 新增中繼資料的選用標籤。

1. 選擇建**立角色**。

1. 系統會自動為您的任務選取新建立的角色。

或者，您可以使用 IAM 主控台來建立角色：

****使用 IAM 主控台建立 IAM AWS Glue 角色****

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 在左側導覽窗格中，選擇 **Roles** (角色)。

1. 選擇**建立角色**。

1.  選擇 **AWS 服務**作為信任的實體類型。然後，針對服務或使用案例，尋找並選擇 **AWS Glue**。選擇**下一步**。

1. 在**新增許可**頁面上，選擇包含必要許可的政策；例如，一般AWS Glue許可`AWSGlueServiceRole`的 AWS 受管政策，以及存取 Amazon S3 資源的 AWS 受管政策 Amazon S3FullAccess。 **AmazonS3FullAccess** 然後選擇**下一步**。
**注意**  
確定此角色其中一個政策授予 Amazon S3 來源和目標的許可。您可能想要提供自己的政策來存取特定的 Amazon S3 資源。資料來源需要 `s3:ListBucket` 和 `s3:GetObject` 許可。資料目標需要 `s3:ListBucket`、`s3:PutObject` 和 `s3:DeleteObject` 許可。如需為您的資源建立 Amazon S3 政策的詳細資訊，請參閱[在政策中指定資源](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-arn-format.html)。如需範例 Amazon S3 政策，請參閱[編寫 IAM 政策：如何授予 Amazon S3 儲存貯體的存取](https://aws.amazon.com/blogs/security/writing-iam-policies-how-to-grant-access-to-an-amazon-s3-bucket/)。  
如果您計劃存取使用 SSE-KMS 加密的 Amazon S3 來源和目標，請連接允許 AWS Glue 爬蟲程式、任務和開發端點解密資料的政策。如需詳細資訊，請參閱[使用伺服器端加密搭配受管金鑰保護資料 AWS KMS(SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)。  
下列是 範例。  

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "kms:Decrypt"
         ],
         "Resource": [
           "arn:aws:kms:*:111122223333:key/key-id"
         ]
       }
     ]
   }
   ```

1.  為您的角色命名並新增描述 (選用)，然後檢閱信任政策和許可。在 **Role name (角色名稱)** 中輸入角色名稱，例如 `AWSGlueServiceRoleDefault`。建立名稱字首為 `AWSGlueServiceRole` 字串的角色，以允許角色從主控台使用者傳送到服務。AWS Glue​ 提供的政策預期 IAM​ 服務角色的開頭應為 `AWSGlueServiceRole`。否則，您必須新增政策，允許您的使用者取得 `iam:PassRole` 許可，使 IAM 角色符合您的命名慣例。選擇**建立角色**。
**注意**  
在您使用角色建立筆記本時，系統會將該角色傳遞至互動式工作階段，以便在兩個位置皆可使用同一個角色。因此，`iam:PassRole` 許可需要成為角色政策的一部分。  
使用下列範例為角色建立新政策。用您的帳號與角色名稱取代範例中的值。  

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "iam:PassRole",
         "Resource": "arn:aws:iam::090000000210:role/<role_name>"
       }
     ]
   }
   ```

1.  將標籤新增至您的角色 (選用)。標籤是索引鍵/值組，您可以新增至 AWS 資源，以協助識別、組織或搜尋資源。然後，選擇 **Create role** (建立角色)。