从 2025 年 11 月 1 日起,Amazon Redshift 将不再支持创建新的 Python UDF。如果您想要使用 Python UDF,请在该日期之前创建 UDF。现有的 Python UDF 将继续正常运行。有关更多信息,请参阅博客文章
设置计划查询的权限
要计划查询,定义计划的 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和AmazonRedshiftDataFullAccessAmazon 托管式策略附加到 IAM 用户。 -
或者,为角色分配权限并将该角色分配给用户。
附加一个策略,对于您在定义计划查询时指定的 IAM 角色的资源 ARN,该策略将允许
sts:AssumeRole权限。有关代入角色的更多信息,请参阅《IAM 用户指南》中的向用户授予切换角色的权限。以下示例显示了代入账户
123456789012中的 IAM 角色myRedshiftRole的权限策略。IAM 角色myRedshiftRole也是附加到运行计划查询的集群或工作组的 IAM 角色。更新用于计划查询的 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和AmazonEventBridgeFullAccessAmazon 托管式策略附加到 IAM 角色。AmazonRedshiftDataFullAccess托管式策略只允许使用键RedshiftDataFullAccess标记的 Redshift Serverless 工作组具有redshift-serverless:GetCredentials权限。