oralce 角色 权限

一个用户可以赋予多个角色,一个角色可以拥有多个权限.

CONNECT角色只具有最简单的登录权限,登录后不能做任何操作,只有赋予了CREATE TABLE权限后才能创建表。

数据库实例,数据库监听如果没有启动,普通用户不能连接到数据库。

 

以下内容,转载自:https://www.cnblogs.com/lanqingzhou/p/8145272.html

1.新建个用户

create user xxxxx(用户名) identified by "密码" 

alert user 用户名 identified by “新密码”  --修改用户密码

 

因为新建的用户和默认的用户是锁住的,没有权限。所以新建用户后要给用户赋予权限

grant dba to 用户名    --给用户赋予所有权限,connect是赋予连接数据库的权限,resource 是赋予用户只可以创建实体但是没有创建数据结构的权限。

grant create session to 用户名       --这个是给用户赋予登录的权限。

grant create table to  用户名          --给用户赋予表操作的权限

grant unlimited tablespace to  用户名     --给用户赋予表空间操作的权限

grant select any table to 用户名         --给该用户赋予访问任务表的权限   同理可以赋予update 和delete 的

grant select on srapp_hz_zhpt_yl.jggl to srapp_hz_zhpt_ylcs   --这里是给srapp_hz_zhpt_ylcs用户赋予selectsrapp_hz_zhpt_yl用户的jggl表的查询的权限。同理可以有alter,drop,insert等权限。   -----------------------------注意 这个语句在没有访问另一个用户的权限情况下这个语句要在另一个用户登录情况下执行,这样才能生效。

 

 

-------------撤销权限

基本语法同grant,关键字为revoke 如: revoke create tabel to 用户名  就是取消这个用户的对表操作的权限。

 

-----------查看权限

select * from user_sys_privs;//查看当前用户所有权限

select * from user_tab_privs;//查看所用用户对表的权限

 

 

-----------角色

角色即权限的集合,可以把一个角色授予给用户,管理角色的权限比较简单,可以在一个用户下创建多个角色,用户只需要添加角色就可以管理权限了,便于用户管理权限。

create role myrole;//创建角色

grant create session to myrole;//将创建session的权限授予myrole

grant myrole to zhangsan;//授予zhangsan用户myrole的角色

drop role myrole;删除角色