|
|
GRANT Statement
Grant privileges to a user (or to a user role)
Syntax:
Roles: GRANT role TO [user,] [role,] [PUBLIC] [WITH ADMIN OPTION] System Privs: GRANT system_priv(s) TO [user,] [role,] [PUBLIC] [WITH ADMIN OPTION] GRANT ALL TO [user,] [role,] [PUBLIC] [WITH ADMIN OPTION] Objects: GRANT object_priv [(column, column,...)] ON [schema.]object TO [user], [role], [PUBLIC] [WITH GRANT OPTION] GRANT ALL [(column, column,...)] ON [schema.]object TO [user], [role], [PUBLIC] [WITH GRANT OPTION] GRANT object_priv [(column, column,...)] ON DIRECTORY directory_name TO [user], [role], [PUBLIC] [WITH GRANT OPTION] GRANT object_priv [(column, column,...)] ON JAVA [RE]SOURCE [schema.]object TO [user], [role], [PUBLIC] [WITH GRANT OPTION] key: object_privs ALTER, DELETE, EXECUTE, INDEX, INSERT, REFERENCES, SELECT, UPDATE system_privs ALTER ANY INDEX, BECOME USER, CREATE TABLE, DROP ANY VIEW RESTRICTED SESSION, UNLIMITED TABLESPACE, UPDATE ANY TABLE plus too many others to list here roles Standard Oracle roles - EXP_FULL_DATABASE, IMP_FULL_DATABASE, OSOPER, OSDBA plus any user defined roles you have available
notes:
Several Object_Privs can be assigned in a single GRANT statement
e.g.
GRANT SELECT (empno), UPDATE (sal) ON scott.emp TO emma
"GRANT ALL..." may also be written as "GRANT ALL PRIVILEGES..."
"A people that values its privileges above it's principles soon loses both"
- Dwight D.
Eisenhower
Related Commands:
AUDIT
CREATE ROLE
REVOKE
ORA-01031 - Insufficient privileges
Related Views:
DBA_COL_PRIVS ALL_COL_PRIVS USER_COL_PRIVS COLUMN_PRIVILEGES ALL_COL_PRIVS_MADE USER_COL_PRIVS_MADE ALL_COL_PRIVS_RECD USER_COL_PRIVS_RECD DBA_ROLE_PRIVS USER_ROLE_PRIVS ROLE_ROLE_PRIVS DBA_SYS_PRIVS USER_SYS_PRIVS ROLE_SYS_PRIVS SESSION_PRIVS DBA_TAB_PRIVS ALL_TAB_PRIVS USER_TAB_PRIVS TABLE_PRIVILEGES ROLE_TAB_PRIVS ALL_TAB_PRIVS_MADE USER_TAB_PRIVS_MADE ALL_TAB_PRIVS_RECD USER_TAB_PRIVS_RECD