

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

# 加密 寫入的資料 AWS Glue
<a name="encryption-security-configuration"></a>

*安全組態*是一組安全屬性，AWS Glue 會使用這組屬性。您可以使用安全組態來加密靜態資料。以下案例說明您可以使用安全組態的一些方式。
+ 將安全組態附加至 Amazon CloudWatch Logs 爬蟲程式來寫入加密的 AWS Glue。如需將安全組態連接至編目程式的詳細資訊，請參閱[步驟 3：設定安全設定](define-crawler-configure-security-settings.md)。
+ 附加安全組態，以擷取、轉換和載入 (ETL) 任務來寫入加密的 Amazon Simple Storage Service (Amazon S3) 目標和加密的 CloudWatch Logs。
+ 將安全組態附加到 ETL 任務來將其任務書籤寫入做為加密的 Amazon S3 資料。
+ 將安全組態附加至開發端點來寫入加密的 Amazon S3 目標。

**重要**  
目前，安全組態會覆寫任何伺服器端加密 (SSE-S3) 設定，此設定會以 ETL 任務參數的形式進行傳遞。因此，此兩個安全組態和 SSE-S3 參數會與任務相關聯，且 SSE-S3 參數會遭到忽略。

如需有關安全組態的詳細資訊，請參閱[在 AWS Glue 主控台上使用安全組態](console-security-configurations.md)。

**Topics**
+ [設定 AWS Glue 來使用安全組態](#encryption-setup-Glue)
+ [AWS KMS 為 VPC 任務和爬蟲程式建立路由至](#encryption-kms-vpc-endpoint)
+ [在 AWS Glue 主控台上使用安全組態](console-security-configurations.md)

## 設定 AWS Glue 來使用安全組態
<a name="encryption-setup-Glue"></a>

遵循這些步驟來設定 AWS Glue 環境，即可使用安全組態。

1. 建立或更新您的 AWS Key Management Service (AWS KMS) 金鑰，將許可授予 AWS KMS 傳遞給AWS Glue爬蟲程式和任務的 IAM 角色，以加密 CloudWatch Logs。如需詳細資訊，請參閱 *Amazon CloudWatch Logs 使用者指南*中的[使用 AWS KMS加密 CloudWatch Logs 中的日誌資料](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/encrypt-log-data-kms.html)。

   在下列範例中， *"role1"*、*"role2"* 和 *"role3"* 為 IAM 角色，這些角色會傳送到爬蟲程式和任務。

   ```
   {
          "Effect": "Allow",
          "Principal": { "Service": "logs.region.amazonaws.com",
          "AWS": [
                   "role1",
                   "role2",
                   "role3"
                ] },
                       "Action": [
                              "kms:Encrypt*",
                              "kms:Decrypt*",
                              "kms:ReEncrypt*",
                              "kms:GenerateDataKey*",
                              "kms:Describe*"
                       ],
                       "Resource": "*"
   }
   ```

   `Service` 陳述式 (顯示為 `"Service": "logs.region.amazonaws.com"`) 在您使用金鑰加密 CloudWatch Logs 時為必要項目。

1. 在使用 AWS KMS 金鑰`ENABLED`之前，請確定金鑰為 。

**注意**  
若您使用 Iceberg 作為資料湖架構，Iceberg 資料表會透過其專屬機制啟用伺服器端加密。除了安全組態之外 AWS Glue，您還應該啟用這些組態。若要在 Iceberg 資料表上啟用伺服器端加密，請檢閱 [Iceberg 文件](https://iceberg.apache.org/docs/latest/aws/#s3-server-side-encryption)中的指引。

## AWS KMS 為 VPC 任務和爬蟲程式建立路由至
<a name="encryption-kms-vpc-endpoint"></a>

您可以透過在 Virtual Private Cloud (VPC) 內的私有端點直接連接至 AWS KMS ，而無需連接至網際網路。當您使用 VPC 端點時，VPC 與 之間的通訊 AWS KMS 會完全在 AWS 網路中執行。

您可以在 AWS KMS VPC 內建立 VPC 端點。少了這個步驟，任務和爬蟲程式可能會失敗，而在任務上出現 `kms timeout` 或在爬蟲程式上出現 `internal service exception`。如需詳細說明，請參閱《 *AWS Key Management Service 開發人員指南*》中的[AWS KMS 透過 VPC 端點連線至](https://docs.aws.amazon.com/kms/latest/developerguide/kms-vpc-endpoint.html) 。

當您在 [VPC 主控台](https://console.aws.amazon.com//vpc)上遵循這些指示時，您必須執行以下：
+ 選取 **Enable Private DNS name (啟用私人 DNS 名稱)**。
+ 選擇用於存取 Java Database Connectivity (JDBC) 的任務或爬蟲程式的 **Security group (安全群組)** (含自我參考規則)。如需有關 AWS Glue 連線的詳細資訊，請參閱 [連線至資料](glue-connections.md)。

當您將安全組態新增至存取 JDBC 資料存放區的爬蟲程式或任務時， AWS Glue 必須具有端點的路由 AWS KMS 。您可以使用網路位址轉譯 (NAT) 閘道或 AWS KMS VPC 端點來提供路由。若要建立 NAT 閘道，請參閱 *Amazon VPC 使用者指南*中的 [NAT 閘道](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html)。

# 在 AWS Glue 主控台上使用安全組態
<a name="console-security-configurations"></a>

**警告**  
AWS Glue Ray 任務目前不支援安全組態。

AWS Glue 中*安全組態*的包含在您寫入加密資料時所需的屬性。您將在 AWS Glue 主控台建立安全組態，以提供爬蟲程式、任務以及開發端點所使用的加密屬性。

若要查看您已建立的所有安全組態清單，請開啟位於 [https://console.aws.amazon.com/glue/](https://console.aws.amazon.com/glue/) 的 AWS Glue 主控台，然後在導覽窗格中選擇 **Security configurations (安全組態)** 標籤。

**安全組態**清單顯示有關各個組態的下列屬性：

**名稱**  
在建立組態時提供的唯一獨特名稱。名稱可包含字母 (A-Z)、數字 (0-9)、連字號 (-) 或底線 (\$1)，並且長度上限為 255 個字元。

**啟用 Amazon S3 加密**  
如果開啟，則會針對資料目錄中的中繼資料存放區啟用 `SSE-KMS` 或 `SSE-S3` 等 Amazon Simple Storage Service (Amazon S3) 等加密模式。

**啟用 Amazon CloudWatch Logs 加密**  
如果開啟，則會在將日誌寫入 Amazon CloudWatch 時啟用 `SSE-KMS` 等 Amazon S3 加密模式。

**進階設定：啟用任務書籤加密**  
如果開啟，則會在為任務加上書籤時啟用 `CSE-KMS` 等 Amazon S3 加密模式。

您可以在主控台的 **Security configurations (安全組態)** 部分中新增或刪除組態。若要查看組態詳細資訊，請在清單中選擇組態的名稱。詳細資訊包含您在建立組態時所定義的資訊。

## 新增安全組態
<a name="console-security-configurations-wizard"></a>

 若要使用 AWS Glue 主控台新增安全組態，請在 **Security configurations (安全組態)** 頁面，選擇 **Add security configuration (新增安全性設定)**。

![\[螢幕擷取畫面會顯示「新增安全性組態」頁面。\]](http://docs.aws.amazon.com/zh_tw/glue/latest/dg/images/add_security_configuration.png)


 **安全性組態屬性** 

 輸入不重複的安全性組態名稱。名稱可包含字母 (A-Z)、數字 (0-9)、連字號 (-) 或底線 (\$1)，並且長度上限為 255 個字元。

 **加密設定** 

您可以針對存放在 Amazon S3 資料目錄中的中繼資料和 Amazon CloudWatch 中的日誌啟用靜態加密。若要在AWS Glue主控台上使用 AWS Key Management Service (AWS KMS) 金鑰設定資料和中繼資料的加密，請將政策新增至主控台使用者。此政策必須指定允許的資源做為金鑰 Amazon Resource Name (ARN) (用於加密 Amazon S3​ 資料存放區)，如以下範例所示。

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

****  

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

------

**重要**  
當安全組態連接到爬蟲程式或任務時，傳遞的 IAM 角色必須具有 AWS KMS 許可。如需詳細資訊，請參閱[加密 寫入的資料 AWS Glue](encryption-security-configuration.md)。

當您定義組態時，您可為下列屬性提供值：

**啟用 S3 加密**  
當您寫入 Amazon S3 資料時，您可以使用伺服器端加密搭配 Amazon S3 受管金鑰 (SSE-S3) 或伺服器端加密搭配 AWS KMS 受管金鑰 (SSE-KMS)。此欄位為選用欄位。若要允許存取 Amazon S3，請選擇 AWS KMS 金鑰，或選擇**輸入金鑰 ARN**，並提供金鑰的 ARN。以 `arn:aws:kms:region:account-id:key/key-id` 的形式輸入 ARN。您也可以提供 ARN 做為金鑰別名，例如 `arn:aws:kms:region:account-id:alias/alias-name`。  
如果您為任務啟用 Spark UI，則上傳到 Amazon S3 的 Spark UI 日誌檔案將採用相同的加密方式。  
AWS Glue 僅支援對稱客戶主金鑰 (CMK)。**AWS KMS key (KMS 金鑰)** 清單僅會顯示對稱金鑰。不過，如果您選取**選擇 AWS KMS 金鑰 ARN**，主控台可讓您輸入任何金鑰類型的 ARN。請確定您僅輸入對稱金鑰的 ARN。

**啟用 CloudWatch Logs 加密**  
伺服器端 (SSE-KMS) 加密是用來加密 CloudWatch Logs。此欄位為選用欄位。若要開啟，請選擇 AWS KMS 金鑰，或選擇**輸入金鑰 ARN** 並提供金鑰的 ARN。以 `arn:aws:kms:region:account-id:key/key-id` 的形式輸入 ARN。您也可以提供 ARN 做為金鑰別名，例如 `arn:aws:kms:region:account-id:alias/alias-name`。

**進階設定：任務書籤加密**  
用戶端 (CSE-KMS) 加密是用於加密任務書籤。此欄位為選用欄位。書籤資料會先加密後才傳送至 Amazon S3​ 儲存。若要開啟，請選擇 AWS KMS 金鑰，或選擇**輸入金鑰 ARN** 並提供金鑰的 ARN。以 `arn:aws:kms:region:account-id:key/key-id` 的形式輸入 ARN。您也可以提供 ARN 做為金鑰別名，例如 `arn:aws:kms:region:account-id:alias/alias-name`。

如需詳細資訊，請參閱《*Amazon Simple Storage Service 使用者指南*》中的下列主題：
+ 如需關於 `SSE-S3` 的詳細資訊，請參閱[使用伺服器端加密與 Amazon S3 受管加密金鑰 (SSE-S3) 保護資料](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html)。
+ 如需 的相關資訊`SSE-KMS`，請參閱[使用伺服器端加密搭配 保護資料 AWS KMS keys](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)。
+ 如需有關 `CSE-KMS` 的資訊，請參閱 [Using a KMS key stored in AWS KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html#client-side-encryption-kms-managed-master-key-intro)。