自 2025 年 11 月 1 日起,Amazon Redshift 將不再支援建立新的 Python UDFs。如果您想要使用 Python UDFs,請在該日期之前建立 UDFs。現有的 Python UDFs將繼續如常運作。如需詳細資訊,請參閱部落格文章
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
驗證已排程的查詢
在排程查詢時,您會在 SQL 執行時使用下列其中一種身分驗證方法。每種方法都需要在查詢編輯器 v2 上使用不同的輸入組合。用於執行 SQL 陳述式的資料 API 支援這些身分驗證方法。
用於執行查詢的資料庫使用者或角色必須具備必要的資料庫權限。例如,若要授予資料表 mytable
的 IAMR:MyRedshiftQEv2Scheduler
權限,請執行下列 SQL 命令。
GRANT all ON TABLE mytable TO "IAMR:MyRedshiftQEv2Scheduler";
若要檢視叢集或工作群組中的資料庫使用者清單,請查詢系統檢視 PG_USER_INFO
。
注意
您排程查詢的任何 Redshift Serverless 工作群組都會以金鑰 標記RedshiftDataFullAccess
。如需詳細資訊,請參閱授權 Amazon Redshift 資料 API 的存取。
若要替代標記工作群組的做法,您也可以將內嵌政策新增至允許 redshift-serverless:GetCredentials
的 IAM 角色 (隨排程指定)。例如:
- AWS Secrets Manager
-
使用此方法時,請為儲存在 AWS Secrets Manager中的 secret-arn 提供機密值。此秘密包含用來連線至資料庫的憑證。當您建立叢集或工作群組時,可能已建立具有適當登入資料的秘密。此機密必須標記了索引鍵
RedshiftDataFullAccess
。如果標籤索引鍵尚未存在,請使用 AWS Secrets Manager 主控台來新增它。如需建立秘密的詳細資訊,請參閱 建立資料庫連線登入資料的秘密。如需最基本許可的相關資訊,請參閱《AWS Secrets Manager 使用者指南》中的使用 AWS Secrets Manager建立和管理機密。
- 臨時憑證
-
使用此方法時,請在連線到叢集中的資料庫時提供您的資料庫名稱和資料庫使用者值。您只需要在連線至工作群組中的資料庫時提供資料庫名稱。
在連線至叢集時,
AmazonRedshiftDataFullAccess
政策會允許名為redshift_data_api_user
的資料庫使用者獲得redshift:GetClusterCredentials
的許可。如果您想要使用不同的資料庫使用者來執行 SQL 陳述式,請在附加至叢集的 IAM 角色中新增政策以允許redshift:GetClusterCredentials
。下列範例政策會允許資料庫使用者awsuser
和myuser
。