UDF 安全與權限 - Amazon Redshift

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

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