控制對 AWS CloudHSM 金鑰存放區的存取 - AWS Key Management Service

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

控制對 AWS CloudHSM 金鑰存放區的存取

您可以使用 IAM 政策來控制對 AWS CloudHSM 金鑰存放區和 AWS CloudHSM 叢集的存取。您可以使用金鑰政策、IAM 政策,並授予對 AWS CloudHSM 金鑰存放區中 AWS KMS keys 的存取。建議您只提供使用者、群組和角色可能執行的任務所需的許可給他們。

授權 AWS CloudHSM 金鑰存放區管理員和使用者

在設計 AWS CloudHSM 金鑰存放區時,請確定使用和管理它的主體只具有他們所需的許可。以下清單說明 AWS CloudHSM 金鑰存放區管理員和使用者所需的最低許可。

  • 建立和管理 AWS CloudHSM 金鑰存放區的主體需要以下許可,才能使用 AWS CloudHSM 金鑰存放區 API 操作。

    • cloudhsm:DescribeClusters

    • kms:CreateCustomKeyStore

    • kms:ConnectCustomKeyStore

    • kms:DeleteCustomKeyStore

    • kms:DescribeCustomKeyStores

    • kms:DisconnectCustomKeyStore

    • kms:UpdateCustomKeyStore

    • iam:CreateServiceLinkedRole

  • 建立和管理與 AWS CloudHSM 金鑰存放區相關聯的 AWS CloudHSM 叢集的主體,需要許可來建立和初始化 AWS CloudHSM 叢集。這包括要有許可來建立或使用 Amazon Virtual Private Cloud (VPC)、建立子網路,以及建立 Amazon EC2 執行個體。他們可能還需要建立和刪除 HSM,以及管理備份。如需必要許可的清單,請參閱《AWS CloudHSM 使用指南》中 AWS CloudHSM 的身分與存取管理

  • 在 AWS CloudHSM 金鑰存放區建立和管理 AWS KMS keys 的主體,與在 AWS KMS 中建立和管理任何 KMS 金鑰的主體,需要相同的許可。AWS CloudHSM 金鑰存放區中 KMS 金鑰的預設金鑰政策與 AWS KMS 中 KMS 金鑰的預設金鑰政策完全相同。屬性型存取控制 (ABAC) 使用標籤和別名來控制對 KMS 金鑰的存取,對 AWS CloudHSM 金鑰存放區中的 KMS 金鑰也有效。

  • 將 AWS CloudHSM 金鑰存放區中的 KMS 金鑰用於密碼編譯操作的委託人,需要許可才能使用 KMS 金鑰執行密碼編譯操作,例如 kms:Decrypt。您可以在金鑰政策或 IAM 政策中提供這些許可。但是,他們使用 AWS CloudHSM 金鑰存放區中的 KMS 金鑰並不需要任何額外的許可。

授權 AWS KMS 來管理 AWS CloudHSM 和 Amazon EC2 資源

為了支援您的 AWS CloudHSM 金鑰存放區,AWS KMS 需要許可來取得 AWS CloudHSM 叢集的相關資訊。還需要許可來建立網路基礎設施,以便將 AWS CloudHSM 金鑰存放區連接到其 AWS CloudHSM 叢集。若要取得這些權限 AWSServiceRoleForKeyManagementServiceCustomKeyStores,AWS KMS請在您的AWS 帳戶. 建立 AWS CloudHSM 金鑰存放區的使用者必須具有 iam:CreateServiceLinkedRole 許可,讓他們能夠建立服務連結角色。

關於 AWS KMS 服務連結角色

服務連結角色是 IAM 角色,提供許可給一個 AWS 服務代表您呼叫其他 AWS 服務。目的是讓您輕鬆使用多個整合的 AWS 服務的功能,而不需要建立和維護複雜的 IAM 政策。如需詳細資訊,請參閱 使用 AWS KMS 的服務連結角色

針對AWS CloudHSM金鑰存放區,AWS KMS建立具有AWSKeyManagementServiceCustomKeyStoresServiceRolePolicy策略的AWSServiceRoleForKeyManagementServiceCustomKeyStores服務連結角色。此政策將下列許可授予此角色:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudhsm:Describe*", "ec2:CreateNetworkInterface", "ec2:AuthorizeSecurityGroupIngress", "ec2:CreateSecurityGroup", "ec2:DescribeSecurityGroups", "ec2:RevokeSecurityGroupEgress", "ec2:DeleteSecurityGroup", "ec2:DescribeVpcs", "ec2:DescribeNetworkAcls", "ec2:DescribeNetworkInterfaces" ], "Resource": "*" } ] }

由於AWSServiceRoleForKeyManagementServiceCustomKeyStores服務連結角色只信任cks.kms.amazonaws.com,因此只AWS KMS能擔任此服務連結角色。此角色僅限用於讓 AWS KMS 檢視 AWS CloudHSM 叢集和將 AWS CloudHSM 金鑰存放區連接到其關聯的 AWS CloudHSM 叢集所需的操作。並不授予 AWS KMS 任何額外的許可。例如,AWS KMS 沒有許可來建立、管理或刪除 AWS CloudHSM 叢集、HSM 或備份。

區域

與AWS CloudHSM金鑰存放區功能一樣,AWSServiceRoleForKeyManagementServiceCustomKeyStores角色在所有可用的AWS 區域位置AWS CloudHSM都AWS KMS受到支援。如需每個服務支援的 AWS 區域 清單,請參閱《Amazon Web Services 一般參考》的AWS Key Management Service 端點及配額AWS CloudHSM端點及配額

如需 AWS 服務如何使用服務連結角色的詳細資訊,請參閱《IAM 使用者指南》中的使用服務連結角色

建立服務連結角色

AWS KMS當您建立AWS CloudHSM金鑰存放區AWS 帳戶時,如果角色尚未存在,則會自動在您的中建立AWSServiceRoleForKeyManagementServiceCustomKeyStores服務連結角色。您無法直接建立或重新建立此服務連結角色。

編輯服務連結角色描述

您無法編輯 AWSServiceRoleForKeyManagementServiceCustomKeyStores 服務連結角色中的角色名稱或政策陳述式,但可以編輯角色描述。如需相關說明,請參閱《IAM 使用者指南》中的編輯服務連結角色

刪除服務連結角色

AWS KMS即使您已刪除所有AWS CloudHSM金鑰存放區,AWS 帳戶也不會刪除您的AWSServiceRoleForKeyManagementServiceCustomKeyStores服務連結角色。雖然目前沒有刪除AWSServiceRoleForKeyManagementServiceCustomKeyStores服務連結角色的程序,但除非您擁有作用中的AWS CloudHSM金鑰存放區,否則不AWS KMS會擔任此角色或使用其權限。