oracle 权限

来源:互联网 发布:金融职位人数 知乎 编辑:程序博客网 时间:2024/06/07 15:59
oracle 权限
系统权限
--登录权限
grant create session to user;
--创建表权限
grant create table to user;
--表空间权限
grant unlimited tablespace to user;
--删除创建表权限
revoke create table from user;
--创建用户
create user username identified by password;
如果撤销权限即是把create 换成 revoke ,to 换成from

--查看用户权限视图
select * fromuser_sys_privs;

oracle 3个默认用户
sys system soctt

对象权限
.在oracle中各个用户之间是相互分离的,不能相互访问数据。
赋权限:grant all on tableName to user ;
撤销权限:revoke all on tableName from user ;
all 指对这个表的所有权限,增删改查等等。

如果想要把所有表的权限给所有用户
grant create any table to public;

oracle 权限控制比较严格,可以把权限控制到列
grant update(列名) on 表名 to user;
不过只有修改和新增能控制到列,查询/删除不可以。

查询用户列权限
select * from user_col_privs;

DDL 数据定义语言 ,创建,修改,删除表
DML 数据操纵语言 增删改查、
DCL 数据控制语言。控制和撤销权限

权限的传递
当我们在赋权限的时候如何才能把接受到的权限转向另外一个用户呢
grant alter any table to user with admin option; 也可以把admin换成grant

我们可以通过创建角色,然后给角色赋予多个权限,再把角色给某个用户
但是有些权限是不能赋给角色的,比如不受限制的表空间 unlimted tablespace
只能直接赋给某个用户。

1 0