oracle–角色权限

  • 2019 年 10 月 10 日
  • 筆記

将不同权限赋予角色,再将角色赋予用户,起到管理权限的作用

SQL> create role myrole;

角色已创建。

SQL> grant create session to myrole;

授权成功。

SQL> grant create table to myrole;

授权成功。

SQL> create user zs identified by zs;

用户已创建。

SQL> grant myrole to zs;

授权成功。

SQL> drop role myrole;

角色已删除。

SQL>

SQL> create role myrole;    角色已创建。    SQL> grant unlimited tablespace to myrole;    授权成功。

某些权限不用通过role 授予用户

查询用户所有权限

--查看用户和默认表空间的关系  select username,default_tablespace from dba_users;  --查看当前用户能访问的表  select * from user_tables;  --Oracle查询用户表  select * from user_all_tables;    --Oracle查询用户视图  select * from user_views;  --查询所有函数和储存过程:  select * from user_source;  --查询所有用户:  select * from all_users;  --select * from dba_users  --查看当前用户连接:  select * from v$Session;  --查看用户角色  SELECT * FROM USER_ROLE_PRIVS;  --查看当前用户权限:  select * from session_privs;  --查看所有用户所拥有的角色  SELECT * FROM DBA_ROLE_PRIVS;  --查看所有角色  select * from dba_roles;  --查看数据库名  SELECT NAME FROM V$DATABASE;  --查看所有表空间使用情况  select a.file_id "FileNo",         a.tablespace_name "Tablespace_name",         a.bytes "Bytes",         a.bytes - sum(nvl(b.bytes, 0)) "Used",         sum(nvl(b.bytes, 0)) "Free",         sum(nvl(b.bytes, 0)) / a.bytes * 100 "%free"    from dba_data_files a, dba_free_space b   where a.file_id = b.file_id(+)   group by a.tablespace_name, a.file_id, a.bytes   order by a.tablespace_name;