本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
针对高级用户的 AWS 托管策略
您可以使用 AWSKeyManagementServicePowerUser
托管式策略为您账户中的 IAM 主体授予高级用户的权限。高级用户可以创建 KMS 密钥、使用和管理他们创建的 KMS 密钥,以及查看所有 KMS 密钥和 IAM 身份。具有 AWSKeyManagementServicePowerUser
托管式策略的主体还可以从其他来源获取权限,包括密钥策略、其他 IAM policy 和授权。
AWSKeyManagementServicePowerUser
是一种 AWS 托管式 IAM policy。有关 AWS 托管策略的更多信息,请参阅《IAM 用户指南》中的AWS 托管策略。
注意
此策略中特定于 KMS 密钥的权限(例如 kms:TagResource
和 kms:GetKeyRotationStatus
)仅在该 KMS 密钥的密钥策略明确允许 AWS 账户 使用 IAM policy 以控制对密钥的访问时才有效。要确认权限是否特定于 KMS 密钥,请参阅 AWS KMS 权限 并在 Resources(资源)列中查找 KMS 密钥的值。
此策略授予高级用户对任何 KMS 密钥执行操作的权限,以及允许该操作的密钥策略。对于跨账户权限(例如 kms:DescribeKey
和 kms:ListGrants
),这可能包括不可信 AWS 账户 中的 KMS 密钥。有关详细信息,请参阅 IAM policy 的最佳实践 和 允许其他账户中的用户使用 KMS 密钥。要确认权限是否对其他账户中的 KMS 密钥有效,请参阅 AWS KMS 权限 并查找 Cross-account use(跨账户使用)列中 Yes(是)的值。
要允许主体正确查看 AWS KMS 控制台,主体需要 tag:GetResources 权限,该权限不包含在 AWSKeyManagementServicePowerUser
策略中。您可以在单独的 IAM 策略中允许此权限。
AWSKeyManagementServicePowerUser
-
允许主体创建 KMS 密钥。由于此过程包括设置密钥策略,因此高级用户可以授予自己和其他人使用和管理他们创建的 KMS 密钥的权限。
-
允许主体创建和删除所有 KMS 密钥上的别名和标签。更改标签或别名可以允许或拒绝使用和管理 KMS 密钥的权限。有关详细信息,请参阅AWS KMS 中的 ABAC。
-
允许主体获取有关所有 KMS 密钥的详细信息,包括其密钥 ARN、加密配置、密钥策略、别名、标签和轮换状态。
-
允许主体列出 IAM 用户、组和角色。
-
此策略不允许主体使用或管理他们未创建的 KMS 密钥。但他们可以更改所有 KMS 密钥上的别名和标签,这可能会允许或拒绝其使用或管理 KMS 密钥的权限。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:CreateAlias", "kms:CreateKey", "kms:DeleteAlias", "kms:Describe*", "kms:GenerateRandom", "kms:Get*", "kms:List*", "kms:TagResource", "kms:UntagResource", "iam:ListGroups", "iam:ListRoles", "iam:ListUsers" ], "Resource": "*" } ] }