編輯外部金鑰存放區屬性 - AWS Key Management Service

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

編輯外部金鑰存放區屬性

您可以編輯現有外部金鑰存放區的所選屬性。

您可以在連接或中斷連接外部金鑰存放區時編輯某些屬性。對於其他屬性,您必須先中斷外部金鑰存放區與其外部金鑰存放區代理的連接。外部金鑰存放區的連接狀態必須是 DISCONNECTED。當您的外部金鑰存放區中斷連線時,您可以管理金鑰存放區及其KMS金鑰,但無法在外部KMS金鑰存放區中建立或使用金鑰。若要尋找外部金鑰存放區的連線狀態,請使用 DescribeCustomKeyStores操作,或參閱外部金鑰存放區詳細資訊頁面上的一般組態區段。

更新外部金鑰存放區屬性之前, AWS KMS 會使用新值將GetHealthStatus請求傳送至外部金鑰存放區代理。如果請求成功,表示您可以使用更新後的屬性值連接至外部金鑰存放區代理並進行身分驗證。如果請求失敗,編輯操作將失敗,並顯示識別錯誤的例外狀況。

編輯操作完成時,外部金鑰存放區的更新屬性值會顯示在 AWS KMS 主控台和DescribeCustomKeyStores回應中。但是,變更需要 5 分鐘才能完全生效。

如果您在 AWS KMS 主控台中編輯外部金鑰存放區,您可以選擇上傳JSON以 為基礎的代理組態檔案,指定代理URI路徑代理身分驗證憑證 。某些外部金鑰存放區代理會為您產生此檔案。如需詳細資訊,請參閱外部金鑰存放區代理或外部金鑰管理器的文件。

警告

更新的屬性值必須將外部金鑰存放區連接至與先前值相同的外部金鑰管理器的代理,或使用相同密碼編譯金鑰之外部金鑰管理器的備份或快照。如果您的外部金鑰存放區永久無法存取與其金鑰相關聯的外部KMS金鑰,則無法復原在這些外部金鑰下加密的加密文字。特別是,變更外部金鑰存放區的代理連線可能會 AWS KMS 阻止 存取您的外部金鑰。

提示

有些外部金鑰管理器會提供更簡單的方法來編輯外部金鑰存放區屬性。如需詳細資訊,請參閱外部金鑰管理器文件。

您可以變更外部金鑰存放區的下列屬性。

可編輯的外部金鑰存放區屬性 任何連接狀態 需要已中斷連接狀態
自訂金鑰存放區名稱

自訂金鑰存放區的必要易記名稱。

重要

請勿在此欄位包含機密或敏感資訊。此欄位可以在 CloudTrail 日誌和其他輸出中以純文字顯示。

Green checkmark icon indicating success or completion.
Proxy 身分驗證憑證 (XksProxyAuthenticationCredential)

(您必須同時指定存取金鑰 ID 和私密存取金鑰,即使您只變更一個元素。)

Green checkmark icon indicating success or completion.
Proxy URI 路徑 (XksProxyUriPath) Green checkmark icon indicating success or completion.
Proxy 連線 (XksProxyConnectivity)

(您還必須更新代理URI端點。 如果您要變更為VPC端點服務連線,您必須指定代理VPC端點服務名稱。)

Green checkmark icon indicating success or completion.
Proxy URI端點 (XksProxyUriEndpoint)

如果您變更代理端點 URI,您可能還需要變更相關聯的TLS憑證。

Green checkmark icon indicating success or completion.
Proxy VPC端點服務名稱 (XksProxyVpcEndpointServiceName)

(VPC端點服務連線需要此欄位)

Green checkmark icon indicating success or completion.

編輯外部金鑰存放區的屬性

您可以在 AWS KMS 主控台中或使用 UpdateCustomKeyStore操作來編輯外部金鑰存放區的屬性。

編輯金鑰存放區時,您可以變更任何可編輯的值。某些變更需要將外部金鑰存放區與其外部金鑰存放區代理中斷連接。

如果您要編輯代理URI路徑或代理身分驗證憑證,您可以輸入新值或上傳包含新值的外部金鑰存放區代理組態檔案

  1. 登入 AWS Management Console 並在 https://console.aws.amazon.com/kms 開啟 AWS Key Management Service (AWS KMS) 主控台。

  2. 若要變更 AWS 區域,請使用頁面右上角的區域選擇器。

  3. 在導覽窗格中,依次選擇 Custom key stores (自訂金鑰存放區)、External key stores (外部金鑰存放區)。

  4. 選擇您想要編輯的外部金鑰存放區的資料列。

  5. 如果需要,將外部金鑰存放區與其外部金鑰存放區代理中斷連接。從 Key store actions (金鑰存放區動作) 選單中,選擇 Disconnect (中斷連接)。

  6. Key store actions (金鑰存放區動作) 選單中,選擇 Edit (編輯)。

  7. 變更一個或多個可編輯的外部金鑰存放區屬性。您也可以上傳外部金鑰存放區代理組態檔案,其中包含代理URI路徑和代理身分驗證憑證的值。即使檔案中指定的某些值尚未變更,您也可以使用代理組態檔案。

  8. 選擇 Update external key store (更新外部金鑰存放區)。

  9. 檢閱警告,如果您決定繼續,請確認警告,然後選擇 Update external key store (更新外部金鑰存放區)。

    當程序成功時,會出現訊息描述您編輯的屬性。當操作失敗時,會出現錯誤訊息,其中描述問題並提供如何修正的協助。

  10. 如有必要,請重新連接外部金鑰存放區。從 Key store actions (金鑰存放區動作) 選單中,選擇 Connect (連接)。

    您可以將外部金鑰存放區保持中斷連接。但在中斷連線時,您無法在外部KMS金鑰存放區中建立KMS金鑰,或在密碼編譯操作 中使用外部金鑰存放區中的金鑰。

若要變更外部金鑰存放區的屬性,請使用 UpdateCustomKeyStore操作。您可以在相同操作中變更外部金鑰存放區的多個屬性。如果操作成功, 會 AWS KMS 傳回 200 HTTP 回應和沒有屬性的JSON物件。

使用 CustomKeyStoreId 參數可識別外部金鑰存放區。使用其他參數來變更屬性。您無法將代理組態檔案用於 UpdateCustomKeyStore 操作。代理組態檔案僅主控台支援 AWS KMS 。不過,您可以使用代理組態檔案來協助您判斷外部金鑰存放區代理的正確參數值。

本節中的範例使用 AWS Command Line Interface (AWS CLI),但您可以使用任何支援的程式設計語言。

在開始之前,如果需要,將外部金鑰存放區與其外部金鑰存放區代理中斷連接。更新之後,如果需要,您可以將外部金鑰存放區重新連接至其外部金鑰存放區代理。您可以讓外部金鑰存放區處於中斷連線狀態,但必須先重新連線,才能在金鑰存放區中建立新的KMS金鑰,或使用金鑰存放區中的現有KMS金鑰進行密碼編譯操作。

注意

如果您使用 1.0 AWS CLI 版,請在指定具有 HTTP或 HTTPS值的參數之前執行下列命令,例如 XksProxyUriEndpoint 參數。

aws configure set cli_follow_urlparam false

否則, AWS CLI 版本 1.0 會將參數值取代為該URI地址找到的內容,造成下列錯誤:

Error parsing parameter '--xks-proxy-uri-endpoint': Unable to retrieve https:// : received non 200 status code of 404

變更外部金鑰存放區的名稱

第一個範例使用 UpdateCustomKeyStore操作,將外部金鑰存放區的易記名稱變更為 XksKeyStore。此命令使用 CustomKeyStoreId 參數來識別自訂金鑰存放區和 CustomKeyStoreName 來指定自訂金鑰存放區的新名稱。將所有範例值取代為外部金鑰存放區的實際值。

$ aws kms update-custom-key-store --custom-key-store-id cks-1234567890abcdef0 --new-custom-key-store-name XksKeyStore

變更代理身分驗證憑證

下列範例會更新 AWS KMS 用於向外部金鑰存放區代理進行身分驗證的代理身分驗證憑證。如果在代理上輪換憑證,則可以使用類似這樣的命令來更新憑證。

請先更新外部金鑰存放區代理上的憑證。然後使用此功能將變更報告給 AWS KMS。(您的代理會短暫支援舊憑證和新憑證,以便有時間在 中更新憑證 AWS KMS。)

您必須在憑證中同時指定存取金鑰 ID 和私密存取金鑰,即使只變更一個值。

前兩個命令設定變數來保留憑證值。UpdateCustomKeyStore 操作使用 CustomKeyStoreId 參數識別外部金鑰存放區。其會使用 XksProxyAuthenticationCredential 參數及其 AccessKeyIdRawSecretAccessKey 欄位來指定新的憑證。將所有範例值取代為外部金鑰存放區的實際值。

$ accessKeyID=access key id $ secretAccessKey=secret access key $ aws kms update-custom-key-store --custom-key-store-id cks-1234567890abcdef0 \ --xks-proxy-authentication-credential \ AccessKeyId=$accessKeyId,RawSecretAccessKey=$secretAccessKey

變更代理URI路徑

下列範例會更新代理URI路徑 (XksProxyUriPath)。代理URI端點和代理URI路徑的組合在 AWS 帳戶 和 區域中必須是唯一的。將所有範例值取代為外部金鑰存放區的實際值。

$ aws kms update-custom-key-store --custom-key-store-id cks-1234567890abcdef0 \ --xks-proxy-uri-path /kms/xks/v1

VPC 端點服務連線的變更

下列範例使用 UpdateCustomKeyStore操作,將外部金鑰存放區代理連線類型變更為 VPC_ENDPOINT_SERVICE。若要進行此變更,您必須指定VPC端點服務連線的必要值,包括VPC端點服務名稱 (XksProxyVpcEndpointServiceName) 和代理URI端點 (XksProxyUriEndpoint) 值,其中包含VPC端點服務的私有DNS名稱。將所有範例值取代為外部金鑰存放區的實際值。

$ aws kms update-custom-key-store --custom-key-store-id cks-1234567890abcdef0 \ --xks-proxy-connectivity "VPC_ENDPOINT_SERVICE" \ --xks-proxy-uri-endpoint https://myproxy-private.xks.example.com \ --xks-proxy-vpc-endpoint-service-name com.amazonaws.vpce.us-east-1.vpce-svc-example

變更為公有端點連接

下列範例會將外部金鑰存放區代理連接類型變更為 PUBLIC_ENDPOINT。當您進行此變更時,您必須更新代理URI端點 (XksProxyUriEndpoint) 值。將所有範例值取代為外部金鑰存放區的實際值。

注意

VPC 端點連線提供比公有端點連線更高的安全性。在變更為公有端點連線之前,請考慮其他選項,包括將外部金鑰存放區代理放置在內部部署,以及VPC僅使用 進行通訊。

$ aws kms update-custom-key-store --custom-key-store-id cks-1234567890abcdef0 \ --xks-proxy-connectivity "PUBLIC_ENDPOINT" \ --xks-proxy-uri-endpoint https://myproxy.xks.example.com