AWS Identity and Access Management
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Amazon Redshift 的操作、资源和条件键

Amazon Redshift(服务前缀:redshift)提供以下服务特定的资源、操作和条件上下文键以在 IAM 权限策略中使用。

参考:

Amazon Redshift 定义的操作

您可以在 Action 策略语句的 IAM 元素中指定以下操作。可以使用策略授予在 AWS 中执行操作的权限。您在策略中使用一项操作时,通常使用相同的名称允许或拒绝对 API 操作或 CLI 命令的访问。但在某些情况下,单一动作可控制对多项操作的访问。还有某些操作需要多种不同的动作。

资源列指示每个操作是否支持资源级权限。如果该列没有任何值,您必须在策略语句的 Resource 元素中指定所有资源(“*”)。如果该列包含一种资源类型,则可以在含有该操作的语句中指定该类型的 ARN。必需资源在表中以星号 (*) 表示。如果在使用该操作的语句中指定资源级权限 ARN,则它必须属于该类型。某些操作支持多种资源类型。如果资源类型是可选的(未指示为必需),则可以选择使用一种类型而不使用其他类型。

有关下表中各列的详细信息,请参阅 操作表

操作 描述 访问级别 资源类型(* 为必需) 条件键 相关操作
AcceptReservedNodeExchange 将 DC1 预留节点交换为 DC2 预留节点而不更改配置(期限、付款类型或节点数),并且不会产生额外的费用 写入
AuthorizeClusterSecurityGroupIngress 为 Amazon Redshift 安全组添加入站(传入)规则。 权限管理

securitygroup*

securitygroupingress-ec2securitygroup*

AuthorizeSnapshotAccess 授权指定的 AWS 客户账户恢复指定的快照 权限管理

snapshot*

BatchDeleteClusterSnapshots 删除批次最大为 100 的快照 写入

snapshot*

BatchModifyClusterSnapshots 修改一批快照的设置 写入

snapshot*

CancelQuery 授予权限以通过 Redshift Query Editor 取消查询 写入
CancelQuerySession [仅权限] 控制用户是否可以在 Amazon Redshift 控制台的“集群”部分的“查询”选项卡中看到查询。 写入
CancelResize 取消正在进行的经典大小调整 写入

cluster*

CopyClusterSnapshot 将指定的自动集群快照复制为新的手动集群快照 写入

snapshot*

CreateCluster 创建新集群 写入

cluster*

CreateClusterParameterGroup 创建 Amazon Redshift 参数组 写入

parametergroup*

CreateClusterSecurityGroup 新建 Amazon Redshift 安全组 写入

securitygroup*

CreateClusterSnapshot 创建指定集群的手动快照 写入

snapshot*

CreateClusterSubnetGroup 新建 Amazon Redshift 子网组 写入

subnetgroup*

CreateClusterUser 提供权限,如果指定的 redshift 用户不存在则自动创建它 权限管理

dbuser*

redshift:DbUser

CreateEventSubscription 创建 Amazon Redshift 事件通知订阅 写入

eventsubscription*

CreateHsmClientCertificate 创建 HSM 客户端证书,Amazon Redshift 集群将使用该证书连接到客户端的 HSM,从而存储并检索用于加密集群数据库的密钥 写入

hsmclientcertificate*

CreateHsmConfiguration 创建 HSM 配置,其中包含 Amazon Redshift 集群在硬件安全模块 (HSM) 中存储并使用数据库加密密钥所需的信息 写入

hsmconfiguration*

CreateSavedQuery 授予权限以通过 Redshift Saved Queries 创建保存的查询 写入
CreateSnapshotCopyGrant 创建快照副本授予,允许 Amazon Redshift 使用 AWS Key Management Service (AWS KMS) 的客户主密钥 (CMK) 加密在目标区域中复制的快照 权限管理

snapshotcopygrant*

CreateSnapshotSchedule 创建给定的快照计划 写入

snapshotschedule*

CreateTags 为指定资源添加一个或多个标签 标记
DeleteCluster 删除之前预置的集群 写入

cluster*

DeleteClusterParameterGroup 删除指定的 Amazon Redshift 参数组 写入

parametergroup*

DeleteClusterSecurityGroup 删除 Amazon Redshift 安全组 写入

securitygroup*

DeleteClusterSnapshot 删除指定的手动快照 写入

snapshot*

DeleteClusterSubnetGroup 删除指定的集群子网组 写入

subnetgroup*

DeleteEventSubscription 删除 Amazon Redshift 事件通知订阅 写入

eventsubscription*

DeleteHsmClientCertificate 删除指定的 HSM 客户端证书 写入

hsmclientcertificate*

DeleteHsmConfiguration 删除指定的 Amazon Redshift HSM 配置 写入

hsmconfiguration*

DeleteSavedQueries 授予权限以通过 Redshift Saved Queries 删除保存的查询 写入
DeleteSnapshotCopyGrant 删除指定的快照副本授予 写入

snapshotcopygrant*

DeleteSnapshotSchedule 删除给定的快照计划 写入

snapshotschedule*

DeleteTags 删除资源的一个或多个标签 标记
DescribeAccountAttributes 允许用户获取附加到账户的属性列表 Read
DescribeClusterDbRevisions 允许用户获取集群的数据库修订列表 List
DescribeClusterParameterGroups 返回 Amazon Redshift 参数组的列表,包括您创建的参数组和默认参数组 Read
DescribeClusterParameters 返回指定 Amazon Redshift 参数组中所包含参数的详细列表 Read

parametergroup*

DescribeClusterSecurityGroups 返回 Amazon Redshift 安全组的相关信息 Read
DescribeClusterSnapshots 返回一个或多个快照对象,其中包含与集群快照相关的元数据 Read
DescribeClusterSubnetGroups 返回一个或多个集群子网组对象,其中包含与集群子网组相关的元数据 Read
DescribeClusterTracks 允许用户获取所有可用的维护跟踪列表 List
DescribeClusterVersions 返回可用 Amazon Redshift 集群版本的描述 Read
DescribeClusters 返回经过配置的集群的属性,包括通用集群属性、集群数据库属性、维护和备份属性以及安全和访问权限属性 List
DescribeDefaultClusterParameters 返回指定参数组系列的参数设置列表 Read
DescribeEventCategories 显示所有事件源类型或指定源类型的事件类别列表 Read
DescribeEventSubscriptions 列出某一客户账户的所有 Amazon Redshift 事件通知订阅的描述 Read
DescribeEvents 返回过去 14 天内与集群、安全组、快照和参数组相关的事件 List
DescribeHsmClientCertificates 返回指定 HSM 客户端证书的相关信息 Read
DescribeHsmConfigurations 返回指定 Amazon Redshift HSM 配置的相关信息 Read
DescribeLoggingStatus 描述指定 Amazon Redshift 集群的信息(例如查询和连接尝试)是否被记录 Read

cluster*

DescribeOrderableClusterOptions 返回可订购集群选项的列表 Read
DescribeQuery 授予权限以通过 Redshift Query Editor 描述查询 Read
DescribeReservedNodeOfferings 返回 Amazon Redshift 提供的可用预留节点的列表及其描述,包括节点类型、预留该节点的固定费用和周期性费用,以及为您预留该节点的持续时间 Read
DescribeReservedNodes 返回预留节点的描述 Read
DescribeResize 返回上次为指定集群调整大小的相关信息 Read

cluster*

DescribeSnapshotCopyGrants 返回目标区域中 AWS 账户拥有的快照副本授予列表 Read
DescribeSnapshotSchedules 描述创建的快照计划 Read

snapshotschedule*

DescribeStorage 返回账户级备份存储大小和临时存储 Read
DescribeTable 授予权限以通过 Redshift Query Editor 描述表 Read
DescribeTableRestoreStatus 列出使用 RestoreTableFromClusterSnapshot API 操作做出的一个或多个表恢复请求的状态 Read
DescribeTags 返回标签列表 Read
DisableLogging 停止为指定 Amazon Redshift 集群记录信息,例如查询和连接尝试 写入

cluster*

DisableSnapshotCopy 禁用针对指定集群自动将快照从一个区域复制到另一个区域 写入

cluster*

EnableLogging 开始为指定 Amazon Redshift 集群记录信息,例如查询和连接尝试 写入

cluster*

EnableSnapshotCopy 启用针对指定集群自动将快照从一个区域复制到另一个区域 写入

cluster*

ExecuteQuery 授予权限以通过 Redshift Query Editor 执行查询 写入
FetchResults 授予权限以通过 Redshift Query Editor 获取查询结果 Read
GetClusterCredentials 获得指定 redshift 用户的临时集群证书 写入

dbuser*

dbgroup

dbname

redshift:DbName

redshift:DbUser

redshift:DurationSeconds

GetReservedNodeExchangeOfferings 返回与给定 DC1 预留节点的付款类型、期限和使用价格匹配的 DC2 ReservedNodeOfferings 数组 Read
JoinGroup 提供加入指定 redshift 组的权限 权限管理

dbgroup*

ListDatabases 授予权限以通过 Redshift Query Editor 列出数据库 List
ListSavedQueries 授予权限以通过 Redshift Saved Queries 列出保存的查询 List
ListSchemas 授予权限以通过 Redshift Query Editor 列出架构 List
ListTables 授予权限以通过 Redshift Query Editor 列出表 List
ModifyCluster 修改某一集群的设置 写入

cluster*

ModifyClusterDbRevision 允许用户修改集群的数据库修订 写入

cluster*

ModifyClusterIamRoles 修改 AWS Identity and Access Management (IAM) 角色的列表,集群会使用这些角色访问其他 AWS 服务 权限管理

cluster*

ModifyClusterMaintenance 允许用户修改集群的维护设置 写入
ModifyClusterParameterGroup 修改参数组中的参数 写入

parametergroup*

ModifyClusterSnapshot 修改快照的设置 写入

snapshot*

ModifyClusterSnapshotSchedule 修改集群的快照计划设置 写入

cluster*

ModifyClusterSubnetGroup 修改集群子网组,包括 VPC 子网的指定列表 写入

subnetgroup*

ModifyEventSubscription 修改现有的 Amazon Redshift 事件通知订阅 写入

eventsubscription*

ModifySavedQuery 授予权限以通过 Redshift Saved Queries 修改现有的保存查询 写入
ModifySnapshotCopyRetentionPeriod 修改将自动化快照从源区域复制到目标区域后保留的天数 写入

cluster*

ModifySnapshotSchedule 修改给定的快照计划 写入

snapshotschedule*

PurchaseReservedNodeOffering 允许您购买预留节点。Amazon Redshift 提供一组预定义的预留节点产品 写入
RebootCluster 重新引导集群 写入

cluster*

ResetClusterParameterGroup 将指定参数组的一个或多个参数设为其默认值,并将参数的源值设为 "engine-default" 写入

parametergroup*

ResizeCluster 更改集群大小。您可以更改集群类型,或更改节点数量或类型 写入

cluster*

RestoreFromClusterSnapshot 根据快照创建新集群 写入

snapshot*

RestoreTableFromClusterSnapshot 根据 Amazon Redshift 集群快照中的表创建新表 写入

cluster*

snapshot*

RevokeClusterSecurityGroupIngress 撤销 Amazon Redshift 安全组中之前授权的 IP 范围或 Amazon EC2 安全组的传入规则 权限管理

securitygroup*

securitygroupingress-ec2securitygroup*

RevokeSnapshotAccess 禁用指定 AWS 客户账户还原指定快照的能力 权限管理

snapshot*

RotateEncryptionKey 为集群轮换加密密钥 权限管理

cluster*

ViewQueriesFromConsole 授予权限以通过 Redshift Query Editor 从控制台中查看查询结果 List
ViewQueriesInConsole [仅权限] 控制用户是否可以在 Amazon Redshift 控制台的“集群”部分终止正在运行的查询和负载。 List

Amazon Redshift 定义的资源

以下资源类型是由该服务定义的,可以在 IAM 权限策略语句的 Resource 元素中使用这些资源类型。操作表中的每个操作指定了可以使用该操作指定的资源类型。您也可以在策略中包含条件键,从而定义资源类型。这些键显示在表的最后一列。有关下表中各列的详细信息,请参阅 资源类型表

资源类型 ARN 条件键
cluster arn:${Partition}:redshift:${Region}:${Account}:cluster:${ClusterName}
dbgroup arn:${Partition}:redshift:${Region}:${Account}:dbgroup:${ClusterName}/${DbGroup}
dbname arn:${Partition}:redshift:${Region}:${Account}:dbname:${ClusterName}/${DbName}
dbuser arn:${Partition}:redshift:${Region}:${Account}:dbuser:${ClusterName}/${DbUser}
eventsubscription arn:${Partition}:redshift:${Region}:${Account}:eventsubscription:${EventSubscriptionName}
hsmclientcertificate arn:${Partition}:redshift:${Region}:${Account}:hsmclientcertificate:${HSMClientCertificateId}
hsmconfiguration arn:${Partition}:redshift:${Region}:${Account}:hsmconfiguration:${HSMConfigurationId}
parametergroup arn:${Partition}:redshift:${Region}:${Account}:parametergroup:${ParameterGroupName}
securitygroup arn:${Partition}:redshift:${Region}:${Account}:securitygroup:${SecurityGroupName}/ec2securitygroup/${Owner}/${Ec2SecurityGroupId}
securitygroupingress-cidr arn:${Partition}:redshift:${Region}:${Account}:securitygroupingress:${SecurityGroupName}/cidrip/${IpRange}
securitygroupingress-ec2securitygroup arn:${Partition}:redshift:${Region}:${Account}:securitygroupingress:${SecurityGroupName}/ec2securitygroup/${Owner}/${Ece2SecuritygroupId}
snapshot arn:${Partition}:redshift:${Region}:${Account}:snapshot:${ClusterName}/${SnapshotName}
snapshotcopygrant arn:${Partition}:redshift:${Region}:${Account}:snapshotcopygrant:${SnapshotCopyGrantName}
snapshotschedule arn:${Partition}:redshift:${Region}:${Account}:snapshotschedule:${ParameterGroupName}
subnetgroup arn:${Partition}:redshift:${Region}:${Account}:subnetgroup:${SubnetGroupName}

Amazon Redshift 的条件键

Amazon Redshift 定义以下可以在 IAM 策略的 Condition 元素中使用的条件键。您可以使用这些键进一步细化应用策略语句的条件。有关下表中各列的详细信息,请参阅 条件键表

要查看适用于所有服务的全局条件键,请参阅 IAM 策略参考 中的可用的全局条件键

条件键 描述 类型
redshift:DbName 根据数据库名称控制访问权限。 字符串
redshift:DbUser 根据数据库用户名控制访问权限。 字符串
redshift:DurationSeconds 根据距临时证书组到期剩余的秒数控制访问权限。 字符串