检查授予 - AWS Key Management Service

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

检查授予

授权是一种高级机制,用于指定您或与 AWS KMS 集成的 AWS 服务可用于指定使用 KMS 密钥的方式和时间的权限。授权将附加到 KMS 密钥,每个授权都包含一位委托人,此委托人可获得使用 KMS 密钥和所允许的操作列表的权限。授权是密钥策略的替代方案,对特定的使用案例很有用。有关更多信息,请参阅 补助金 AWS KMS

要获取 KMS 密钥的授权列表,请使用AWS KMSListGrants操作。您可以检查 KMS 密钥的授权来确定当前有权通过这些授权使用 KMS 密钥的对象。例如,下面是某个授权的 JSON 表示形式,此授权使用 中的 list-grantsAWS CLI 命令获取。

{"Grants": [{ "Operations": ["Decrypt"], "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Name": "0d8aa621-43ef-4657-b29c-3752c41dc132", "RetiringPrincipal": "arn:aws:iam::123456789012:root", "GranteePrincipal": "arn:aws:sts::111122223333:assumed-role/aws:ec2-infrastructure/i-5d476fab", "GrantId": "dc716f53c93acacf291b1540de3e5a232b76256c83b2ecb22cdefa26576a2d3e", "IssuingAccount": "arn:aws:iam::111122223333:root", "CreationDate": 1.444151834E9, "Constraints": {"EncryptionContextSubset": {"aws:ebs:id": "vol-5cccfb4e"}} }]}

要了解有权使用 KMS 密钥的对象,可查找 "GranteePrincipal" 元素。在上述示例中,被授权委托人是与 EC2 实例 i-5d476fab 关联的假设用户角色。EC2 基础设施使用此角色将加密的 EBS 卷 vol-5cccfb4e 附加到此实例。在此情况下,EC2 基础设施角色有权使用 KMS 密钥,因为您之前创建了受此 KMS 密钥保护的加密的 EBS 卷。之后,您将此卷附加到了 EC2 实例。

下面是 JSON 表示形式的另一个授权示例,此授权使用 中的 list-grantsAWS CLI 命令获取。在以下示例中,被授权者委托人是另一个 AWS 账户。

{"Grants": [{ "Operations": ["Encrypt"], "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "Name": "", "GranteePrincipal": "arn:aws:iam::444455556666:root", "GrantId": "f271e8328717f8bde5d03f4981f06a6b3fc18bcae2da12ac38bd9186e7925d11", "IssuingAccount": "arn:aws:iam::111122223333:root", "CreationDate": 1.444151269E9 }]}