本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
的身份和访问管理 AWS CloudHSM
AWS使用安全证书来识别您的身份并授予您访问AWS资源的权限。你可以使用以下功能 AWS Identity and Access Management (IAM) 允许其他用户、服务和应用程序完全或以有限的方式使用您的AWS资源。您可以在不共享安全凭证的情况下执行此操作。
默认情况下,IAM用户无权创建、查看或修改AWS资源。要允许IAM用户访问诸如负载均衡器之类的资源并执行任务,您可以:
-
创建一项IAM策略,授予IAM用户使用他们所需的特定资源和API操作的权限。
-
将策略附加到IAM用户或该IAM用户所属的群组。
在将策略附加到一个用户或一组用户时,它会授权或拒绝用户使用指定资源执行指定任务。
例如,您可以使用IAM在您的AWS账户下创建用户和群组。IAM用户可以是个人、系统或应用程序。然后,您可以使用IAM策略向用户和组授予对指定资源执行特定操作的权限。
使用 IAM 策略授予权限
在将策略附加到一个用户或一组用户时,它会授权或拒绝用户使用指定资源执行指定任务。
IAM策略是由一个或多个声明组成的JSON文档。每个语句的结构如下例所示。
{ "Version": "2012-10-17", "Statement":[{ "Effect": "
effect
", "Action": "action
", "Resource": "resource-arn
", "Condition": { "condition
": { "key
":"value
" } } }] }
-
效果 - 效果可以是
Allow
或Deny
。默认情况下,IAM用户无权使用资源和API操作,因此所有请求都将被拒绝。显式允许将覆盖默认规则。显式拒绝将覆盖任何允许。 -
操作-操作是您授予或拒绝权限的特定API操作。有关指定 action(操作)的更多信息,请参阅API的行动 AWS CloudHSM。
-
Resource(资源):受操作影响的资源。 AWS CloudHSM 不支持资源级权限。必须使用* 通配符指定全部 AWS CloudHSM 资源的费用。
-
条件—— 您可以选择性地使用条件来控制策略的生效时间。有关更多信息,请参阅 的条件键 AWS CloudHSM。
有关更多信息,请参阅《IAM用户指南》。
API的行动 AWS CloudHSM
在IAM策略声明的操作元素中,您可以指定任何符合以下条件的API操作 AWS CloudHSM 优惠。如以下示例所示,您必须使用小写形式的字符串 cloudhsm:
作为操作名称的前缀。
"Action": "cloudhsm:DescribeClusters"
要在单个语句中指定多项操作,请使用方括号将操作括起来并以逗号分隔,如以下示例所示。
"Action": [
"cloudhsm:DescribeClusters",
"cloudhsm:DescribeHsm"
]
您也可以使用 * 通配符指定多项操作。以下示例指定了的所有API操作名称 AWS CloudHSM 那一开始就是List
。
"Action": "cloudhsm:List*"
为以下各项指定所有API操作 AWS CloudHSM,使用* 通配符,如以下示例所示。
"Action": "cloudhsm:*"
有关API操作的列表 AWS CloudHSM,请参阅 AWS CloudHSM 行动。
的条件键 AWS CloudHSM
在创建策略时,您可指定控制策略生效时间的条件。每个条件都包含一个或多个键值对。有全局条件键和特定于服务的条件键。
AWS CloudHSM 没有特定于服务的上下文密钥。
有关全局条件键的更多信息,请参阅IAM用户指南中的AWS全局条件上下文密钥。
的预定义AWS托管策略 AWS CloudHSM
通过AWS授予常见用例所需的权限创建的托管策略。您可以根据IAM用户的访问权限将这些策略附加到您的用户 AWS CloudHSM 他们需要:
-
AWSCloudHSMFullAccess— 授予使用所需的完全访问权限 AWS CloudHSM 特征。
-
AWSCloudHSMReadOnlyAccess— 授予对的只读访问权限 AWS CloudHSM 特征。
客户管理的政策 AWS CloudHSM
我们建议您为创建IAM管理员组 AWS CloudHSM 只包含运行所需的权限 AWS CloudHSM。 将具有相应权限的策略附加到该群组。根据需要将IAM用户添加到群组。添加的每个用户将继承管理员组的策略。
此外,我们建议您根据用户所需的权限来创建其他用户组。这样可以确保只有受信任的用户才能访问关键API操作。例如,您可以创建一个用户组,用于向集群和授予只读访问权限HSMs。由于该组不允许用户删除集群HSMs,或者,不受信任的用户不能影响生产工作负载的可用性。
像新的一样 AWS CloudHSM 管理功能会随着时间的推移而增加,您可以确保只有受信任的用户才能立即获得访问权限。通过在创建时将有限权限分配给策略,您可以在以后手动为它们分配新的功能权限。
以下是以下政策的示例 AWS CloudHSM。 有关如何创建策略并将其附加到IAM用户组的信息,请参阅《IAM用户指南》JSON中的 “在选项卡上创建策略”。
例 示例:只读权限
此策略允许访问DescribeClusters
和DescribeBackups
API操作。它还包括针对特定 Amazon EC2 API 操作的额外权限。它不允许用户删除集群或HSMs。
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "cloudhsm:DescribeClusters", "cloudhsm:DescribeBackups", "cloudhsm:ListTags" ], "Resource": "*" } }
例 示例:高级用户权限
此策略允许访问其中的一个子集 AWS CloudHSM API行动。它还包括针对特定 Amazon EC2 操作的额外权限。它不允许用户删除集群或HSMs。您必须包括允许的iam:CreateServiceLinkedRole
操作 AWS CloudHSM 在您的账户中自动创建AWSServiceRoleForCloudHSM服务相关角色。这个角色允许 AWS CloudHSM 记录事件。有关更多信息,请参阅 的服务相关角色 AWS CloudHSM。
注意
要查看每种权限的具体权限API,请参阅操作、资源和条件键 AWS CloudHSM在《服务授权参考》中。
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "cloudhsm:DescribeClusters", "cloudhsm:DescribeBackups", "cloudhsm:CreateCluster", "cloudhsm:CreateHsm", "cloudhsm:RestoreBackup", "cloudhsm:CopyBackupToRegion", "cloudhsm:InitializeCluster", "cloudhsm:ListTags", "cloudhsm:TagResource", "cloudhsm:UntagResource", "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeNetworkInterfaceAttribute", "ec2:DetachNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:CreateSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:RevokeSecurityGroupEgress", "ec2:DescribeSecurityGroups", "ec2:DeleteSecurityGroup", "ec2:CreateTags", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "iam:CreateServiceLinkedRole" ], "Resource": "*" } }
例 示例:管理员权限
此政策允许所有人访问 AWS CloudHSM API操作,包括要删除的操作HSMs和群集。它还包括针对特定 Amazon EC2 操作的额外权限。您必须包括允许的iam:CreateServiceLinkedRole
操作 AWS CloudHSM 在您的账户中自动创建AWSServiceRoleForCloudHSM服务相关角色。这个角色允许 AWS CloudHSM 记录事件。有关更多信息,请参阅 的服务相关角色 AWS CloudHSM。
{ "Version":"2012-10-17", "Statement":{ "Effect":"Allow", "Action":[ "cloudhsm:*", "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeNetworkInterfaceAttribute", "ec2:DetachNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:CreateSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:AuthorizeSecurityGroupEgress", "ec2:RevokeSecurityGroupEgress", "ec2:DescribeSecurityGroups", "ec2:DeleteSecurityGroup", "ec2:CreateTags", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "iam:CreateServiceLinkedRole" ], "Resource":"*" } }