AS grantor clause
When you grant discretionary access privileges to other users, roles, or to PUBLIC, by default you are the one who can revoke those privileges. The AS grantor clause lets you establish another user as the source of the privileges that you are granting.
When you use the AS grantor clause, the login provided in the AS grantor clause replaces your login in the appropriate system catalog table. You can use this clause only if you have the DBA privilege on the database.
After you use this clause, only the specified grantor can revoke the effects of the current GRANT operation. Even a DBA cannot revoke a privilege unless that DBA is listed in the system catalog table as the user who granted the privilege.
REVOKE ALL ON items FROM PUBLIC;
GRANT ALL ON items TO tom WITH GRANT OPTION;
GRANT SELECT, UPDATE ON items TO jim AS tom;
REVOKE ALL ON items FROM tom;
REVOKE SELECT, UPDATE ON items FROM jim;
580: Cannot revoke permission.
You receive an error because the database server record shows the original grantor as user tom, and you cannot revoke the privilege. Although you are the DBA, you cannot revoke a privilege that another user granted.
The AS grantor clause is not valid in the GRANT DEFAULT ROLE statement.
For contexts where the AS grantor clause is required, rather than optional, see Granting the Execute privilege to PUBLIC.