设为首页 加入收藏

TOP

玩转oracle学习第五天(二)
2015-11-21 01:39:23 来源: 作者: 【 】 浏览:2
Tags:玩转 oracle 学习 第五
nt create view to ken;(权限只能自己有,不能授予其他人)


回收系统权限:使用revoke
revoke create session from ken;
注意:系统权限不是级联回收的
create是系统权限

(2)对象权限:
什么是系统权限?
操作数据库数据对象的权限
系统权限有哪些?
如何赋予系统权限?
方案:当创建一个用户以后,数据库就会为该用户分配一个方案,方案名称和
用户名称是一致的,方案中包括各种各样的数据对象,表,视图,索引,触发器
角色:oracle提供了大概25总角色,每种角色包含了一大批权限
常见对象权限:
alter delete select insert
update index references execute

dba_tab_privs;//显示对象权限
授予对象权限:
create user monkey identified by m123;
grant create session to monkey;


grant select on emp to monkey;
grant update on emp to monkey;
grant select on emp to monkey;
或者
grant all on emp to monkey;

grant update on emp(sal) to monkey; //monkey用户只可以修改scott用户的emp表的sal字段
grant update on emp(ename,sal) to monkey;

grant index on scott.emp to blake with grant option;
使用with grant option选项
该选项用于转授对象权限,但是该选项只能被授予用户,而不能授予角色

权限可以授予用户,也可以授予角色
回收对象的权限:对象权限的回收是级联回收的,而对象权限是不进行级联回收的

系统权限转移派发使用 with admin option
对象权限转移派发使用 with grant option
conn scott/m123;

oracle有两大权限,系统权限和对象权限
角色就是相关权限命令的集合,使用角色的目的就是为了简化权限的管理

角色分为预定义角色和自定义角色,预定义角色有25种,
常用的三种预定义角色
(1)connect角色
含有8种角色
alter session
create cluster
create database link
create session
create table
create view
create sequence
(2)resource角色
注意:resource角色隐含例如unlimited tablespace系统权限
create cluster
create indextype
create table
create sequence
create type
create procedure
create trigger
(3)dba角色
基本上拥有所有系统权限,及with admin option
没有启动和关闭数据库的权限

自定义角色
1)建立角色
(1)建立角色(不验证)
启动数据库服务,启动监听以后,才可以建立数据库连接
如果角色是公有角色,没有设置密码
create role myrole1 not identified;
(2)建立角色(数据库验证)
建立角色设置密码
create role 角色名 identified by ***;

角色授权
当建立角色后,角色时没有任何权限的,需要对其进行授权才可以的

grant create session to 角色名 with admin option;
grant select on emp to 角色名;
grant update on emp to 角色名;
grant delete on emp to 角色名;

1)分配角色
如何分配自定义角色???
create user along identified by m123;
grant myrole1 to along;

2)删除角色
删除角色,要使用数据库系统角色来删除的
conn system/manager
drop role 角色名;
注意:如果角色被删除,则用户将没有该对应的角色
1.显示所有角色
select * from dba_roles;
2.显示角色具有的系统权限

3.显示角色具有的对象权限

4.显示用户具有的角色,及默认角色
select granted_role,default_role from dba_role_privs where
grantee='scott';

精细访问控制:
是指用户可以使用函数,策略实现更加细微的安全访问控制

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇oracle设定用户密码使用时间 下一篇mysql.sock的作用

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: