REVOKE (user defined extension)
Revokes privileges on one or more user-defined extensions from users and roles.
Syntax
REVOKE [ GRANT OPTION FOR ] { EXECUTE | ALL PRIVILEGES }
ON {
UDx-type [[database.]schema.]function-name( [argument-list] )[,...]
| ALL FUNCTIONS IN SCHEMA schema[,...] }
FROM grantee[,...]
Parameters
GRANT OPTION FORRevokes the grant option for the specified privileges. Current privileges for grantees remain unaffected. If you omit this clause, Vertica revokes both the grant option and current privileges.
EXECUTE- Revokes grantees ability to run the specified functions.
ALL [PRIVILEGES]- Revokes all function privileges that also belong to the revoker. Users cannot revoke privileges that they themselves lack.
The optional keyword
PRIVILEGESconforms with the SQL standard. -
ON UDx-type - Specifies the function's user-defined extension (UDx) type, where
UDx-typeis one of the following:-
FUNCTION -
AGGREGATE FUNCTION -
ANALYTIC FUNCTION -
TRANSFORM FUNCTION -
FILTER -
PARSER -
SOURCE
-
[database.]schemaDatabase and schema. The default schema is
public. If you specify a database, it must be the current database.function-name- The name of the user-defined function on which to revoke privileges.
ON ALL FUNCTIONS IN SCHEMAschema- Revokes privileges on all functions in the specified schema.
argument-list- Required for all polymorphic functions, a comma-delimited list of function arguments, where each argument is specified as follows:
[argname] argtypeIf the procedure is defined with no arguments, supply an empty argument list.
granteeWhose privileges are revoked, one of the following:
CASCADERevoke privileges from users who received them from the grantee through
WITH GRANT OPTION.
Privileges
Non-superuser, one of the following:
-
Owner of the target function
-
Privileges grantee who was given the option (
WITH GRANT OPTION) of extending these privileges to other users
Examples
Revoke EXECUTE privileges from user Bob on function myzeroifnull:
=> REVOKE EXECUTE ON FUNCTION myzeroifnull (x INT) FROM Bob;
Revoke all privileges from user Doug on function Pagerank:
=> REVOKE ALL ON TRANSFORM FUNCTION Pagerank (t float) FROM Doug;
Revoke EXECUTE privileges on all functions in the zero-schema schema from user Bob:
=> REVOKE EXECUTE ON ALL FUNCTIONS IN SCHEMA zero-schema FROM Bob;
Revoke EXECUTE privileges from user Bob on the tokenize function:
=> REVOKE EXECUTE ON TRANSFORM FUNCTION tokenize(VARCHAR) FROM Bob;
Revoke all privileges on the ExampleSource() source from user Alice:
=> REVOKE ALL ON SOURCE ExampleSource() FROM Alice;