设置计划查询的权限
要计划查询,定义计划的 Amazon Identity and Access Management(IAM)用户以及与计划关联的 IAM 角色必须配置了使用 Amazon EventBridge 和 Amazon Redshift Data API 的 IAM 权限。要接收来自计划查询的电子邮件,还必须配置可选指定的 Amazon SNS 通知。
以下内容描述了使用 Amazon 托管式策略提供权限的任务,但根据您的环境,您可能需要缩小允许的权限范围。
对于登录到查询编辑器 v2 的 IAM 用户,请使用 IAM 控制台(https://console.aws.amazon.com/iam/
-
除了运行 Amazon Redshift 和查询编辑器 v2 操作的权限外,还要将
AmazonEventBridgeFullAccess
和AmazonRedshiftDataFullAccess
Amazon 托管式策略附加到 IAM 用户。 -
或者,为角色分配权限并将该角色分配给用户。
附加一个策略,对于您在定义计划查询时指定的 IAM 角色的资源 ARN,该策略将允许
sts:AssumeRole
权限。有关代入角色的更多信息,请参阅《IAM 用户指南》中的向用户授予切换角色的权限。以下示例显示了代入账户
123456789012
中的 IAM 角色myRedshiftRole
的权限策略。IAM 角色myRedshiftRole
也是附加到运行计划查询的集群或工作组的 IAM 角色。{ "Version": "2012-10-17", "Statement": [ { "Sid": "AssumeIAMRole", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": [ "arn:aws:iam::
123456789012
:role/myRedshiftRole
" ] } ] }更新用于计划查询的 IAM 角色的信任策略,以允许 IAM 用户代入此角色。
{ "Sid": "AssumeRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/myIAMusername
" }, "Action": "sts:AssumeRole" } ] }
对于您指定为允许运行计划查询的 IAM 角色,请使用 IAM 控制台(https://console.aws.amazon.com/iam/
-
将
AmazonRedshiftDataFullAccess
和AmazonEventBridgeFullAccess
Amazon 托管式策略附加到 IAM 角色。AmazonRedshiftDataFullAccess
托管式策略只允许使用键RedshiftDataFullAccess
标记的 Redshift Serverless 工作组具有redshift-serverless:GetCredentials
权限。