Amazon Redshift は、パッチ 198 以降、新しい Python UDF の作成をサポートしなくなります。既存の Python UDF は、2026 年 6 月 30 日まで引き続き機能します。詳細については、ブログ記事
クエリをスケジュールするアクセス許可の設定
クエリをスケジュールするには、スケジュールを定義する AWS Identity and Access Management (IAM) ユーザーとスケジュールに関連付けられている IAM ロールが Amazon EventBridge と Amazon Redshift Data API を使用する IAM アクセス許可で設定されている必要があります。スケジュールされたクエリから E メールを受信するには、オプションで指定する Amazon SNS 通知も設定する必要があります。
以下では、AWS マネージドポリシーを使用してアクセス許可を付与するタスクについて説明しますが、環境によっては、許可されるアクセス許可の範囲の絞り込みが必要な場合があります。
クエリエディタ v2 にログインしている IAM ユーザーの場合は、IAM コンソール (https://console.aws.amazon.com/iam/
-
Amazon Redshift とクエリエディタ v2 のオペレーションを実行するアクセス許可に加えて、IAM ユーザーに
AmazonEventBridgeFullAccessおよびAmazonRedshiftDataFullAccessAWS マネージドポリシーをアタッチします。 -
または、ロールにアクセス許可を割り当て、そのロールをユーザーに割り当てます。
スケジュールされたクエリを定義するときに指定する 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およびAmazonEventBridgeFullAccessAWS マネージドポリシーを IAM ロールにアタッチします。AmazonRedshiftDataFullAccessマネージドポリシーは、キーRedshiftDataFullAccessでタグ付けされた Redshift Serverless ワークグループに対してのみredshift-serverless:GetCredentialsアクセス許可を付与します。