Library Privileges

Only a superuser can load an external library using the CREATE LIBRARY statement. By default, only a superuser can create user-defined functions (UDFs) based on a loaded library. A superuser can use the GRANT USAGE ON LIBRARY statement to allow users to create UDFs based on classes in the library. The user must also have CREATE privileges on the schema that will contain the UDF.

Privilege Description
USAGE

Permission to create UDFs based on classes in the library

Once created, only a superuser or the user who created a UDF can use it by default. Either of them can grant other users or roles the ability to call the function using the GRANT EXECUTE ON FUNCTION statement. See the GRANT (User Defined Extension) and REVOKE (User Defined Extension) topics in the SQL Reference Manual for more information on granting and revoking privileges on functions.

In addition to EXECUTE privilege, users/roles also require USAGE privilege on the schema in which the function resides in order to execute the function.

For more information about libraries and UDFs, see Developing User-Defined Extensions (UDxs) in Extending Vertica.