Amazon DocumentDB API 权限: 操作、资源和条件参考
在设置使用策略管理访问和编写您可附加到 IAM 身份的权限策略(基于身份的策略)时,可以使用以下内容作为参考。
下面列出了每个 Amazon DocumentDB API 操作。此列表中包含您为了执行该操作可授予权限的相应操作、您可以授予权限的 AWS 资源以及您可以针对细化访问控制而包含的条件键。您需要在策略的 Action 字段中指定操作、在策略的 Resource 字段中指定资源值、在策略的 Condition 字段中指定条件。有关条件的更多信息,请参阅“在策略中指定条件”。
您可以在 Amazon DocumentDB 策略中使用 AWS 范围的条件键来表达条件。有关 AWS 范围内的键的完整列表,请参阅 https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys 中的IAM 用户指南可用键。
您可以使用 IAM 策略模拟器测试 IAM 策略。它将自动提供每个 AWS 操作 (包括 Amazon DocumentDB 操作) 所需的资源和参数的列表。IAM 策略模拟器确定您指定的每个操作所需的权限。有关 IAM 策略模拟器的信息,请参阅 中的IAM使用 IAM 策略模拟器测试 策略。IAM 用户指南
注意
要指定操作,请在 API 操作名称之前使用 rds: 前缀 (例如,rds:CreateDBInstance)。
下面列出了 Amazon RDS API 操作及其相关操作、资源和条件键。
支持资源级权限的 Amazon DocumentDB 操作
资源级权限提供指定允许用户对哪些资源执行操作的能力。Amazon DocumentDB对资源级权限提供部分支持。这意味着对于某些 Amazon DocumentDB 操作,您可以控制何时允许用户执行操作 (基于必须满足的条件)或是允许用户使用的特定资源。例如,您可以向用户授予仅修改特定实例的权限。
下面列出了 Amazon DocumentDB API 操作及其相关操作、资源和条件键。
对于某些管理功能,Amazon DocumentDB 使用与 Amazon RDS 共享的操作技术。
| Amazon DocumentDB API 操作 | 资源 | 条件键 |
|---|---|---|
AddTagsToResource rds:AddTagsToResource |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:db-tag |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
|
ApplyPendingMaintenanceAction rds:ApplyPendingMaintenanceAction |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:db-tag |
CopyDBClusterSnapshot rds:CopyDBClusterSnapshot |
集群快照 arn:aws:rds:region:account-id:cluster-snapshot:cluster-snapshot-name |
rds:cluster-snapshot-tag |
CreateDBCluster rds:CreateDBCluster |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-name |
rds:cluster-tag |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
|
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
|
CreateDBClusterParameterGroup rds:CreateDBClusterParameterGroup |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
CreateDBClusterSnapshot rds:CreateDBClusterSnapshot |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-name |
rds:cluster-tag |
集群快照 arn:aws:rds:region:account-id:cluster-snapshot:cluster-snapshot-name |
rds:cluster-snapshot-tag |
|
CreateDBInstance rds:CreateDBInstance |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:DatabaseClass rds:db-tag |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-name |
rds:cluster-tag |
|
CreateDBSubnetGroup rds:CreateDBSubnetGroup |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
DeleteDBInstance rds:DeleteDBInstance |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:db-tag |
DeleteDBSubnetGroup rds:DeleteDBSubnetGroup |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
DescribeDBClusterParameterGroups rds:DescribeDBClusterParameterGroups |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
DescribeDBClusterParameters rds:DescribeDBClusterParameters |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
DescribeDBClusters rds:DescribeDBClusters |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-instance-name |
rds:cluster-tag |
DescribeDBClusterSnapshotAttributes rds:DescribeDBClusterSnapshotAttributes |
集群快照 arn:aws:rds:region:account-id:cluster-snapshot:cluster-snapshot-name |
rds:cluster-snapshot-tag |
DescribeDBSubnetGroups rds:DescribeDBSubnetGroups |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
DescribePendingMaintenanceActions rds:DescribePendingMaintenanceActions |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:DatabaseClass rds:db-tag |
FailoverDBCluster rds:FailoverDBCluster |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-instance-name |
rds:cluster-tag |
ListTagsForResource rds:ListTagsForResource |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:db-tag |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
|
ModifyDBCluster rds:ModifyDBCluster |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-name |
rds:cluster-tag |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
|
ModifyDBClusterParameterGroup rds:ModifyDBClusterParameterGroup |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
ModifyDBClusterSnapshotAttribute rds:ModifyDBClusterSnapshotAttribute |
集群快照 arn:aws:rds:region:account-id:cluster-snapshot:cluster-snapshot-name |
rds:cluster-snapshot-tag |
ModifyDBInstance rds:ModifyDBInstance |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:DatabaseClass rds:db-tag |
RebootDBInstance rds:RebootDBInstance |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:db-tag |
RemoveTagsFromResource rds:RemoveTagsFromResource |
实例 arn:aws:rds:region:account-id:db:db-instance-name |
rds:db-tag |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
|
ResetDBClusterParameterGroup rds:ResetDBClusterParameterGroup |
集群参数组 arn:aws:rds:region:account-id:cluster-pg:cluster-parameter-group-name |
rds:cluster-pg-tag |
RestoreDBClusterFromSnapshot rds:RestoreDBClusterFromSnapshot |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-instance-name |
rds:cluster-tag |
集群快照 arn:aws:rds:region:account-id:cluster-snapshot:cluster-snapshot-name |
rds:cluster-snapshot-tag |
|
RestoreDBClusterToPointInTime rds:RestoreDBClusterToPointInTime |
Cluster arn:aws:rds:region:account-id:cluster:db-cluster-instance-name |
rds:cluster-tag |
子网组 arn:aws:rds:region:account-id:subgrp:subnet-group-name |
rds:subgrp-tag |
不支持资源级权限的 Amazon DocumentDB 操作
您可以使用一个 IAM 策略中的所有 Amazon DocumentDB操作授予或拒绝用户对该操作的使用权限。但是,并非所有 Amazon DocumentDB 操作都支持资源级权限 (这使您能够指定可对其执行操作的资源)。以下 Amazon DocumentDB API 操作当前不支持资源级权限。因此,要在 IAM 策略中使用这些操作,您必须通过对语句中的 Resource 元素使用 * 通配符,来向用户授予对操作使用所有资源的权限。
rds:DescribeDBClusterSnapshotsrds:DescribeDBInstances
