本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
金鑰同步處理大部分是自動程序,但您可以管理用戶端金鑰耐久性設定。用戶端金鑰耐久性設定在用戶端 SDK 5 和用戶端 SDK 3 中的運作方式不同。
-
在用戶端 SDK 5 中,我們介紹了金鑰可用性定額組的概念。此概念要求您至少使用兩個 HSM 執行叢集。您可以使用用戶端金鑰耐久性設定來選擇退出兩個 HSM 需求。如需定額組的詳細資訊,請參閱 用戶端 SDK 5 概念。
-
在用戶端 SDK 3 中,您可以使用用戶端金鑰耐久性設定來指定必須成功建立金鑰的 HSM 數目,整體作業才會視為成功。
在用戶端 SDK 5 中,金鑰同步處理是完全自動的程序。透過金鑰可用性定額組,新建立的金鑰在您的應用程式使用金鑰前必須存在於叢集中的兩個 HSM 上。若要使用金鑰可用性定額組,您的叢集必須至少要有兩個 HSM。
如果您的叢集組態不符合金鑰耐久性需求,則建立或使用權杖金鑰的任何嘗試都會失敗,並在日誌中顯示下列錯誤訊息:
Key <key handle>
does not meet the availability requirements - The key must be available on at least 2 HSMs before being used.
您可以使用用戶端組態設定來選擇退出金鑰可用性定額組。例如,您可能想要選擇退出以單一 HSM 執行叢集。
用戶端 SDK 5 概念
- 金鑰可用性定額組
-
AWS CloudHSM 指定叢集中的 HSMs 數量,在應用程式可以使用金鑰之前,金鑰必須存在於其中。需要至少有兩個 HSM 的叢集。
管理用戶端金鑰耐久性設定
若要管理用戶端金鑰耐久性設定,您必須使用用戶端 SDK 5 的設定工具。
在用戶端 SDK 3 中,金鑰同步處理大部分是自動程序,但您可以使用用戶端金鑰耐久性設定,讓金鑰更耐久。您需要指定必須成功建立金鑰的 HSM 數目,整體作業才會視為成功。無論您選擇何種設定,用戶端同步處理始終都會盡最大努力嘗試將金鑰複製到叢集中的每個 HSM。您的設定會對您指定的 HSM 數量強制建立金鑰。如果您指定一個值,但系統無法將金鑰複製到該數目的 HSM,則系統會自動清除任何不需要的金鑰材料,您可以再試一次。
重要
如果您未設定用戶端金鑰耐久性設定 (或使用預設值 1),您的金鑰容易遺失。如果您目前的 HSM 應該在伺服器端服務將該金鑰複製到另一個 HSM 之前失敗,您就會遺失金鑰材料。
若要最大化金鑰持久性,請考慮為用戶端同步處理指定至少兩個 HSM。請記住,無論您指定了多少 HSM,叢集上的工作負載都保持不變。用戶端同步處理一律會盡最大努力嘗試將金鑰複製到叢集中的每個 HSM。
建議
-
最小值:每個叢集兩個 HSM
-
最大值:少於叢集中 HSM 總數的一個值
如果用戶端同步處理失敗,用戶端服務會清除任何可能已建立且現在不需要的多餘金鑰。這種清理是盡力而為的回應,可能並非不總是有效。如果清理失敗,您可能必須刪除不需要的金鑰材料。如需詳細資訊,請參閱金鑰同步處理失敗。
設定用戶端金鑰耐久性的組態檔案
若要指定用戶端金鑰耐久性設定,您必須編輯 cloudhsm_client.cfg
。
編輯用戶端組態檔案
-
打開
cloudhsm_client.cfg
.Linux︰
/opt/cloudhsm/etc/
cloudhsm_client.cfg
Windows:
C:\ProgramData\Amazon\CloudHSM\data\
cloudhsm_client.cfg
-
在 檔案的
client
節點中,新增create_object_minimum_nodes
並指定 HSMs 數目下限的值,該值 AWS CloudHSM 必須成功建立金鑰,金鑰建立操作才能成功。"create_object_minimum_nodes" :
2
注意
key_mgmt_util (KMU) 命令列工具有用戶端金鑰耐久性的額外設定。如需詳細資訊,請參閱 KMU 與用戶端同步
組態參考
以下是用戶端同步處理屬性,如 cloudhsm_client.cfg
的摘錄所示:
{
"client": {
"create_object_minimum_nodes" : 2
,
...
},
...
}
- create_object_minimum_nodes
-
指定認為金鑰產生、金鑰匯入或金鑰解除包裝作業成功所需的 HSM 數目下限。如果設定,則預設值為 1。即:對於每個金鑰建立作業,用戶端服務都會嘗試在叢集中的每個 HSM 上建立金鑰,但若要傳回成功,只需要在叢集中的一個 HSM 上建立單一金鑰。
KMU 與用戶端同步
如果您使用 key_mgmt_util (KMU) 命令列工具建立金鑰,您可以使用選用的命令列參數 (-min_srv
) 來限制需要複製金鑰的 HSM 數目。如果您指定命令列參數和組態檔案中的值, 會 AWS CloudHSM 認可兩個值的 LARGER。
如需詳細資訊,請參閱下列主題: