IAM用于管理 Amazon Neptune 的条件密钥 - Amazon Neptune

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

IAM用于管理 Amazon Neptune 的条件密钥

使用条件密钥,可以在IAM策略语句中指定条件,这样该语句仅在条件为真时才生效。您可以在 Neptune 管理策略语句中使用的条件键分为以下几类:

Neptune 管理资源属性条件键

条件键 描述 类型
rds:DatabaseClass 按数据库实例类的类型筛选访问。 String
rds:DatabaseEngine 按数据库引擎筛选访问。有关可能的值,请参阅 C 语言中的引擎参数 reateDBInstance API String
rds:DatabaseName 按数据库实例上的数据库的用户定义名称筛选访问 字符串
rds:EndpointType 按终端节点类型筛选访问。其中之一:READER,WRITER,CUSTOM String
rds:Vpc 按指定数据库实例是否在 Amazon Virtual Private Cloud (AmazonVPC) 中运行的值筛选访问权限。要表示数据库实例在 Amazon 中运行VPC,请指定true 布尔值

基于管理标签的条件键

Amazon Neptune 支持使用自定义标签在IAM策略中指定条件,以控制通过 Neptune 的访问权限。管理 API 参考

例如,如果您向数据库实例添加一个名为 environment 的标签,其值为 betastaging、和 production 等,则可以创建一个策略,以根据该标签的值限制对实例的访问。

重要

如果您使用标签管理对 Neptune 资源的访问,请保护对于标签的访问。您可通过为 AddTagsToResourceRemoveTagsFromResource 操作创建策略来限制对标签的访问。

例如,您可以使用以下策略拒绝用户为所有资源添加或删除标签。然后,您可以创建策略来允许特定用户添加或删除标签。

{ "Version": "2012-10-17", "Statement":[ { "Sid": "DenyTagUpdates", "Effect": "Deny", "Action": [ "rds:AddTagsToResource", "rds:RemoveTagsFromResource" ], "Resource":"*" } ] }

以下基于标签的条件键仅适用于管理策略语句中的管理资源。

基于标签的管理条件键
条件键 描述 类型
aws:RequestTag/${TagKey}

根据在请求中是否具有标签键/值对来筛选访问。

String
aws:ResourceTag/${TagKey}

根据附加到资源的标签键/值对筛选访问。

String
aws:TagKeys

根据在请求中是否具有标签键来筛选访问。

String
rds:cluster-pg-tag/${TagKey} 按附加到数据库集群参数组的标签筛选访问。 String
rds:cluster-snapshot-tag/${TagKey} 按附加到数据库集群快照的标签筛选访问。 String
rds:cluster-tag/${TagKey} 按附加到数据库集群的标签筛选访问。 String
rds:db-tag/${TagKey} 按附加到数据库实例的标签筛选访问。 String
rds:es-tag/${TagKey} 按附加到事件订阅的标签筛选访问。 String
rds:pg-tag/${TagKey} 按附加到数据库参数组的标签筛选访问。 String
rds:req-tag/${TagKey} 按可用于对资源进行标记的一组标签键和值筛选访问。 String
rds:secgrp-tag/${TagKey} 按附加到数据库安全组的标签筛选访问。 String
rds:snapshot-tag/${TagKey} 按附加到数据库快照的标签筛选访问。 String
rds:subgrp-tag/${TagKey} 按附加到数据库子网组的标签筛选访问 String