

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

# AWS Glue 藍圖的人物和角色許可
<a name="blueprints-personas-permissions"></a>

以下是藍圖中角色和角色的典型角色和建議 AWS Identity and Access Management (IAM) AWS Glue 許可政策。

**Topics**
+ [藍圖人物](#blueprints-personas)
+ [藍圖人物的許可](#blueprints-permssions)
+ [藍圖角色的許可](#blueprints-role-permissions)

## 藍圖人物
<a name="blueprints-personas"></a>

以下是通常參與 AWS Glue 藍圖生命週期的人物。


| 人物 | Description | 
| --- | --- | 
| AWS Glue 開發人員 | 開發、測試和發佈藍圖。 | 
| AWS Glue 管理員 | 註冊、維護和授與藍圖的許可。 | 
| 資料分析 | 執行藍圖以建立工作流程。 | 

如需詳細資訊，請參閱[AWS Glue 中的藍圖概觀](blueprints-overview.md)。

## 藍圖人物的許可
<a name="blueprints-permssions"></a>

以下是每個藍圖人物的建議許可。



### 藍圖的 AWS Glue 開發人員許可
<a name="bp-persona-dev"></a>

AWS Glue 開發人員必須對用於發佈藍圖的 Amazon S3 儲存貯體具有寫入許可。通常，開發人員會在上傳藍圖後註冊藍圖。在這種情況下，開發人員需要 [藍圖的 AWS Glue 管理員許可](#bp-persona-admin) 中列出的許可。此外，如果開發人員想要在註冊藍圖後測試藍圖，他或她也需要 [藍圖的資料分析師許可](#bp-persona-analyst) 中列出的許可。

### 藍圖的 AWS Glue 管理員許可
<a name="bp-persona-admin"></a>

下列政策會授予註冊、檢視及維護 AWS Glue 藍圖的許可。

**重要**  
在下列政策中，將 *<s3-bucket-name>* 和 *<prefix>* 替換為 Amazon S3 路徑，以便上傳藍圖 ZIP 封存進行註冊。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:CreateBlueprint",
        "glue:UpdateBlueprint",
        "glue:DeleteBlueprint",
        "glue:GetBlueprint",
        "glue:ListBlueprints",
        "glue:BatchGetBlueprints"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:GetObject"
      ],
      "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/*"
    }
  ]
}
```

------

### 藍圖的資料分析師許可
<a name="bp-persona-analyst"></a>

下列政策會授與執行藍圖和檢視產生的工作流程和工作流程元件的許可。它還授予 AWS Glue 擔任角色的 `PassRole`，以便建立工作流程和工作流程元件。

政策會授與任何資源的許可。如果您想要設定個別藍圖的細微存取，請針對藍圖 ARN 使用下列格式：

```
arn:aws:glue:<region>:<account-id>:blueprint/<blueprint-name>
```

**重要**  
在下列政策中，將 *<account-id>* 取代為有效的 AWS 帳戶，並將 *<role-name>* 取代為用於執行藍圖的角色名稱。請參閱[藍圖角色的許可](#blueprints-role-permissions)以取得此角色所需的許可。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:ListBlueprints",
        "glue:GetBlueprint",
        "glue:StartBlueprintRun",
        "glue:GetBlueprintRun",
        "glue:GetBlueprintRuns",
        "glue:GetCrawler",
        "glue:ListTriggers",
        "glue:ListJobs",
        "glue:BatchGetCrawlers",
        "glue:GetTrigger",
        "glue:BatchGetWorkflows",
        "glue:BatchGetTriggers",
        "glue:BatchGetJobs",
        "glue:BatchGetBlueprints",
        "glue:GetWorkflowRun",
        "glue:GetWorkflowRuns",
        "glue:ListCrawlers",
        "glue:ListWorkflows",
        "glue:GetJob",
        "glue:GetWorkflow",
        "glue:StartWorkflowRun"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::111122223333:role/role-name"
    }
  ]
}
```

------

## 藍圖角色的許可
<a name="blueprints-role-permissions"></a>

以下是用於從藍圖建立工作流程之 IAM 角色的建議許可。該角色必須與 `glue.amazonaws.com` 有信任關係。

**重要**  
在下列政策中，將 *<account-id>* 取代為有效的 AWS 帳戶，並將 *<role-name>* 取代為角色的名稱。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:CreateJob",
        "glue:GetCrawler",
        "glue:GetTrigger",
        "glue:DeleteCrawler",
        "glue:CreateTrigger",
        "glue:DeleteTrigger",
        "glue:DeleteJob",
        "glue:CreateWorkflow",
        "glue:DeleteWorkflow",
        "glue:GetJob",
        "glue:GetWorkflow",
        "glue:CreateCrawler"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": "iam:PassRole",
      "Resource": "arn:aws:iam::111122223333:role/role-name"
    }
  ]
}
```

------

**注意**  
如果工作流程中的任務和爬蟲程式擔任此角色以外的角色，則此政策必須包含其他角色上的 `iam:PassRole` 許可，而不是藍圖角色上的許可。