View a markdown version of this page

UDF 安全與許可 - Amazon Redshift

Amazon Redshift 將不再支援在 2026 年 6 月 30 日之後使用 Python UDFs。我們將開始分階段強制執行。如需 Python 生命週期結束和遷移選項的詳細資訊,請參閱 2025 年 6 月 30 日發佈的部落格文章

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

UDF 安全與許可

若要建立 UDF,您必須具有 SQL 或 plpythonu (Python) 的語言使用權許可。根據預設,USAGE ON LANGUAGE SQL 是授予 PUBLIC,不過,您必須將 USAGE ON LANGUAGE PLPYTHONU 明確授予特定使用者或群組。

若要撤銷 SQL 的使用權,請先從 PUBLIC 撤銷使用權。然後僅將 SQL 使用權授予獲得許可建立 SQL UDF 的特定使用者或群組。下列範例撤銷從 PUBLIC 使用 SQL。然後,它會將使用權授予使用者群組 udf_devs

revoke usage on language sql from PUBLIC; grant usage on language sql to group udf_devs;

若要執行 UDF,您必須具有對每個函數執行此操作的許可。根據預設,新 UDF 的執行許可會授予 PUBLIC。若要限制使用權,請從 PUBLIC 撤銷函數的此項許可。然後將許可授予特定個人或群組。

下列範例撤銷從 PUBLIC 執行函數 f_py_greater。然後,它會將使用權授予使用者群組 udf_devs

revoke execute on function f_py_greater(a float, b float) from PUBLIC; grant execute on function f_py_greater(a float, b float) to group udf_devs;

根據預設,超級使用者具備所有權限。

如需詳細資訊,請參閱GRANTREVOKE