oracle 用户授权 转,(转)oracle分配权限 学习笔记

在全局数据库ORCL下创建一个用户

首先在开始--》运行——》sqlplus,然后输入 sys/change_on_install as sysdba

以sys权限登陆进去

然后可以进行操作:

创建用户 create user test indentified by test;

这样就创建了一个用户名密码都为test的用户

但这个时候test还是不能登陆成功的,我们需要赋予相应的权限

首先赋予create session的权限

grant create session to test;

这样test用户就能成功登陆进去

但是此时用户还是不能创建表 我们需要赋予用户创建表的权限:

grant create table to test;

但是用户此时还不能创建表 因为需要有使用表空间的权限(相当于 用户有了进房间的钥匙 但是没有进大门的钥匙)

所以也应该赋予相应的权限

grant unlimited tablespace to test;

这个时候用户就拥有了创建表的权限 由于表是用户test的 相应的他就拥有了对创建的表的增删查改的权限了

我们要查看用户拥有什么权限可以通过查询一个系统的视图(数字字典)

select * from user_sys_privs;

这样就可以知道当前用户的权限

撤销权限 revoke create table from test;

场景:

用户test 用户test1

test1的用户创建了个表mytab 并且插入了一些数据

那么 test用户是否可以访问到test1的mytab怎么访问?

答:不可以,必须先授权

test1必须授权给test :grant select on mytab to test;

那么这个时候test可以通过 select * from test1.mytab;来访问mytab中的数据

如果想把某个表(对象)的所有权限都赋予给test那么可以:

grant all on mytab to test;

撤销所有权限

revoke all on mytab to test;

总结

对于系统权限由sys来做

对于对象权限由 谁拥有谁授权

系统权限:

grant create session to

test;

grant create table to

test;

grant unlimited tablespace to

test;

revoke create session from

test;

revoke create table from

test;

revoke unlimited tablespase

from test;

grant create session to

public; //表示把创建表的权限赋予所有人

select * from

user_sys_privs; //返回当前用户的所有系统权限

grant select on mytab to

test;

grant all on mytab to

test;

revoke select on mytab from

test;

revoke all on mytab from

test;

对象权限可以控制到列 (更新和插入操作)

grant update(name) on mytab to

test;

grant insert(id) on mytab to

test;

select * from

user_col_privs;

注意:查询和删除不能控制到列 需要有commit的 insert update

insert

权限的传递

系统权限的传递:

grant alter table to A with admin option;

那么A可以通过把该权限传递给B,如果想B也可以传递下去那么可以也带上with admin

option

grant alter table to B;

对象权限的传递:

grant select on mytab to A with grant

option;

那么A可以把在表mytab的select权限赋予给B,如果B想也能传递该select权限也可以带上with grant

option

grant select on mytab to B;

----------------------------------------------------------------------------------------------------------

--创建用户

create user keeltest identified by keeltest;

--分配权限

grant create session,create table,create view ,create any index to

keeltest;

grant unlimited tablespace to keeltest;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值