啟用 Apache Spark 加密 - Amazon Athena

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

啟用 Apache Spark 加密

您可以在 Athena 上啟用 Apache Spark 加密。這樣做可以加密 Spark 節點之間傳輸中的資料,也可以加密 Spark 本機儲存的靜態資料。若要增強此資料的安全性,Athena 使用下列加密組態:

spark.io.encryption.keySizeBits="256" spark.io.encryption.keygen.algorithm="HmacSHA384"

若要啟用 Spark 加密,您可以使用 Athena 主控台、AWS CLI 或 Athena API。

使用 Athena 主控台啟用 Spark 加密

若要建立已啟用 Spark 加密的新筆記本
  1. 前往 https://console.aws.amazon.com/athena/ 開啟 Athena 主控台。

  2. 如果未顯示主控台的導覽窗格,請選擇左側的展開選單。

  3. 執行下列任意一項:

    • Notebook explorer (筆記本瀏覽器) 中,選擇 Create notebook (建立筆記本)。

    • Notebook editor (筆記本瀏覽器) 中,選擇 Create notebook (建立筆記本),或選擇加號圖示 (+) 以新增筆記本。

  4. 筆記本名稱中,輸入筆記本的名稱。

  5. 展開 Spark 屬性選項。

  6. 選取開啟 Spark 加密

  7. 選擇 Create (建立)

您建立的筆記本工作階段已加密。如常使用新的筆記本。當您稍後啟動使用筆記本的新工作階段時,新的工作階段也會加密。

您也可以使用 Athena 主控台為現有筆記本啟用 Spark 加密。

若要啟用現有筆記本的加密
  1. 為先前建立的記事本開啟新的工作階段

  2. 在筆記本編輯器中,從右上角的 Session (工作階段) 選單中,選擇 Edit session (編輯工作階段)。

  3. 編輯工作階段詳細資訊對話方塊中,展開 Spark 屬性

  4. 選取開啟 Spark 加密

  5. 選擇 Save (儲存)。

主控台會啟動已啟用加密的新工作階段。您為此筆記本建立的最新工作階段也會啟用加密。

使用 AWS CLI 啟用 Spark 加密

您可以在啟動工作階段時指定適當的 Spark 屬性,進而使用 AWS CLI 啟用加密。

若要使用 AWS CLI 啟用 Spark 加密
  1. 使用類似下列命令來建立指定 Spark 加密屬性的引擎組態 JSON 物件。

    ENGINE_CONFIGURATION_JSON=$( cat <<EOF { "CoordinatorDpuSize": 1, "MaxConcurrentDpus": 20, "DefaultExecutorDpuSize": 1, "SparkProperties": { "spark.authenticate": "true", "spark.io.encryption.enabled": "true", "spark.network.crypto.enabled": "true" } } EOF )
  2. 在 AWS CLI 中,使用 athena start-session 命令並將您建立的 JSON 物件傳遞給 --engine-configuration 引數,如下列範例所示:

    aws athena start-session \ --region "region" \ --work-group "your-work-group" \ --engine-configuration "$ENGINE_CONFIGURATION_JSON"

使用 Athena API 啟用 Spark 加密

若要使用 Athena API 啟用 Spark 加密,請使用 StartSession 動作及其 EngineConfiguration SparkProperties 參數,以在 StartSession 請求中指定加密組態。