本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
解決 AWS CloudHSM 叢集建立失敗
當您建立叢集時,如果角色不存在, 會 AWS CloudHSM 建立 AWSServiceRoleForCloudHSM 服務連結角色。如果 AWS CloudHSM 無法建立服務連結角色,則建立叢集的嘗試可能會失敗。
此主題說明如何解決最常見的問題,使得您可以成功建立叢集。您只需要建立此角色一次。一旦在您的帳戶中建立服務連結角色,您可以使用任何支援的方法來建立額外的叢集和管理它們。
下列區段提供建議來對與服務連結角色相關的叢集建立錯誤進行故障排除。如果您嘗試這些建議,但仍無法建立叢集,請聯絡 Support
新增遺失的許可
若要建立服務連結角色,使用者必須具有 iam:CreateServiceLinkedRole
許可。如果建立叢集IAM的使用者沒有此許可,當叢集嘗試在 AWS 帳戶中建立服務連結角色時,叢集建立程序會失敗。
當許可遺失而造成失敗時,錯誤訊息會包含下列文字。
This operation requires that the caller have permission to call iam:CreateServiceLinkedRole to create the CloudHSM Service Linked Role.
若要解決此錯誤,請將AdministratorAccess
許可授予建立叢集IAM的使用者,或將iam:CreateServiceLinkedRole
許可新增至使用者IAM的政策。如需說明,請參閱將許可新增至新的或現有的使用者。
然後,再次嘗試建立叢集。
手動建立服務連結角色
您可以使用IAM主控台、 CLI或 API來建立 AWSServiceRoleForCloudHSM服務連結角色。如需詳細資訊,請參閱 IAM 使用者指南 中的建立服務連結角色。
使用非聯合身分使用者
憑證源自 外部的聯合使用者 AWS,可以執行非聯合使用者的許多任務。不過, AWS 不允許使用者API從聯合端點呼叫以建立服務連結角色。
若要解決這個問題,請使用 iam:CreateServiceLinkedRole
許可建立一個非聯合身分使用者,或是為現有的非聯合身分使用者授與 iam:CreateServiceLinkedRole
許可。然後,讓該使用者透過 在 中建立叢集 AWS CloudHSM建立叢集 AWS CLI。如此會在您的帳戶中建立服務連結角色。
一旦建立服務連結角色,您可以刪除非聯合身分使用者建立的叢集 (如果您想要的話)。刪除叢集不會影響角色。此後,任何具有必要許可的使用者,包括聯合使用者,都可以在帳戶中建立 AWS CloudHSM 叢集。
若要驗證角色是否已建立,請在 開啟IAM主控台https://console.aws.amazon.com/iam/
$
aws iam get-role --role-name AWSServiceRoleForCloudHSM
{ "Role": { "Description": "Role for CloudHSM service operations", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "cloudhsm.amazonaws.com" } } ] }, "RoleId": "AROAJ4I6WN5QVGG5G7CBY", "CreateDate": "2017-12-19T20:53:12Z", "RoleName": "AWSServiceRoleForCloudHSM", "Path": "/aws-service-role/cloudhsm.amazonaws.com/", "Arn": "arn:aws:iam::111122223333:role/aws-service-role/cloudhsm.amazonaws.com/AWSServiceRoleForCloudHSM" } }