本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWS CloudHSM 用戶端 SDK 5 金鑰複寫失敗
CloudHSM 中的 key replicate
命令會將金鑰從來源 AWS CloudHSM 叢集CLI複寫至目的地 AWS CloudHSM 叢集。下方概述的步驟是在key replicate
命令因來源叢集內或來源與目的地叢集之間的不一致而失敗時解決失敗。
問題:選取的金鑰未在整個叢集中同步
金鑰複寫程序包含檢查金鑰是否在整個來源叢集中同步。如果任何金鑰資訊或金鑰屬性具有「不一致」值,這表示金鑰不會跨叢集同步。如果在整個叢集中取消同步金鑰,金鑰複寫會失敗,並顯示下列錯誤訊息:
{
"error_code": 1,
"data": "The selected key is not synchronized throughout the cluster"
}
若要查看金鑰是否在來源叢集上取消同步,請在 CloudHSM 中執行 key list
命令CLI,並使用 --filter
旗標來篩選特定金鑰,並使用 --verbose
旗標來查看包含金鑰涵蓋範圍資訊的完整輸出:
aws-cloudhsm >
key list --filter attr.label=my-desynchronized-key-label --verbose
{ "error_code": 0, "data": { "matched_keys": [ { "key-reference": "0x000000000048000f", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "cluster-coverage": "full" }, "attributes": { "key-type": "aes", "label": "my-desynchronized-key-label", "id": "0x", "check-value": "0xbe79db", "class": "secret-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": true, "sign": "inconsistent", "trusted": false, "unwrap": false, "verify": true, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 16 } } ], "total_key_count": 1, "returned_key_count": 1 } }
解決方案:若要讓金鑰資訊和屬性在整個來源叢集中保持同步,請遵循下列其中一個步驟:
-
如果金鑰屬性不一致,請使用
key set-attribute
命令來設定特定金鑰所需的屬性。 -
如果共用使用者的涵蓋範圍不一致,請執行
key share
或key unshare
命令,以與所需使用者共用或取消共用金鑰。
問題:具有相同索引鍵參考的索引鍵存在於具有不同索引鍵資訊或索引鍵屬性的目的地叢集中。
如果具有相同金鑰參考的金鑰存在於具有不同金鑰資訊或金鑰屬性的目的地叢集中,您可能會看到類似下列的錯誤:
{
"error_code": 1,
"data": "Key replicate failed on 1 of 3 connections"
}
解決方案:首先,確定需要保留的金鑰。然後,使用 key delete
命令刪除對應叢集中的 金鑰。最後,從金鑰所在的叢集複寫金鑰。