1、查看所有用户
SQL> select USERNAME from users_users;
SQL> alter user scott account lock;(用户锁定)
SQL>alter user scott account unlock;(用户解锁)
2、查看所有角色,(角色:多个权限的集合)
SQL> select ROLE from dba_roles;
3、查看可以赋予用户的权限
SQL> select PRIVILEGE from dba_sys_privs group by PRIVILEGE;
SQL> select PRIVILEGE from dba_sys_privs where grantee = '角色名';
4、查看当前用户所拥有的权限
SQL> select PRIVILEGE from role_sys_privs;
5、查询某个用户所拥有的角色
SQL> select * from dba_role_privs where grantee = 'SCOTT';
GRANTEE GRANTED_ROLE ADMIN_ DEFAUL
-------------------- -------------------- ------ ------
SCOTT RESOURCE NO YES
SCOTT CONNECT NO YES
6、权限赋予
SQL> grant select, update, insert on test to scott;//对于test表赋予权限给scott
SQL> grant select, update, insert on test to scott with grant option;//权限传递,scott用户也可以赋予以上权限给其他用户
SQL> grant all on test to public; //所有用户都能对表进行查询,插入,更新等操作,但不包括删除表
SQL> select owner, table_name from all_tables; // 用户可以查询的表
SQL> select table_name from user_tables; // 用户创建的表
SQL>grant dba to scott;//DBA角色的授权
7、权限收回
SQL>Revoke select, update, insert on test to scott;//收回权限,如果有权限传递,也将会丢失
8、角色管理
SQL> create role test;//创建角色
SQL> grant insert on scott.emp to test;//赋予角色权限
SQL> revoke insert on scott.emp to test;//收回角色权限
SQL> grant test to jack;// 将角色的所有权限赋予jack用户
SQL> select USERNAME from users_users;
SQL> alter user scott account lock;(用户锁定)
SQL>alter user scott account unlock;(用户解锁)
2、查看所有角色,(角色:多个权限的集合)
SQL> select ROLE from dba_roles;
3、查看可以赋予用户的权限
SQL> select PRIVILEGE from dba_sys_privs group by PRIVILEGE;
SQL> select PRIVILEGE from dba_sys_privs where grantee = '角色名';
4、查看当前用户所拥有的权限
SQL> select PRIVILEGE from role_sys_privs;
SQL> select * from dba_role_privs where grantee = 'SCOTT';
GRANTEE GRANTED_ROLE ADMIN_ DEFAUL
-------------------- -------------------- ------ ------
SCOTT RESOURCE NO YES
SCOTT CONNECT NO YES
6、权限赋予
SQL> grant select, update, insert on test to scott;//对于test表赋予权限给scott
SQL> grant select, update, insert on test to scott with grant option;//权限传递,scott用户也可以赋予以上权限给其他用户
SQL> grant all on test to public; //所有用户都能对表进行查询,插入,更新等操作,但不包括删除表
SQL> select owner, table_name from all_tables; // 用户可以查询的表
SQL> select table_name from user_tables; // 用户创建的表
SQL>grant dba to scott;//DBA角色的授权
7、权限收回
SQL>Revoke select, update, insert on test to scott;//收回权限,如果有权限传递,也将会丢失
8、角色管理
SQL> create role test;//创建角色
SQL> grant insert on scott.emp to test;//赋予角色权限
SQL> revoke insert on scott.emp to test;//收回角色权限
SQL> grant test to jack;// 将角色的所有权限赋予jack用户
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27500440/viewspace-1131079/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/27500440/viewspace-1131079/
本文详细介绍Oracle数据库中的用户管理、权限分配及角色管理等核心操作,包括如何查询用户、角色及权限,如何授予和撤销权限,以及如何管理和使用角色。

被折叠的 条评论
为什么被折叠?



