Oracle(八)权限角色管理

 

管理Oracle权限,角色

 

 

当新创建一个用户的时候它什么权限都没有,就连基本的登录权限都没有

 

权限:系统权限,对象权限

 

 

系统权限是什么? 系统权限有哪些?

如何赋给系统权限?

对象权限一样这几个问题

 

角色为了解决权限的管理

 

系统回收权限不是级联回收

 

with admin option 系统权限传递

 

赋予对象权限

grant update  on emp(salary) to otheruser

grant index on scott.emp to otheruser

 

授权with grant option 的话则改权限可以继续传递

授予角色不能有这个选项

 

对象权限的回收是级联回收的

 

revoke select on emp from theuser

 

 

 

 

角色

 

预定义角色

如connect,resource,dba

connect 的权限

alter session,create cluster

create dababase link,create session

create table,create view

create sequence 

resource的权限,隐藏了unlimited tablespace 系统权限

create cluster,creat indextype

create table ,create sequence

create type,create procedure

create trigger

DBA 的权限

具有所有的系统权限,及with admin option,

没有sysdba,sysoper(启动关闭数据库)

自定义角色 一般dba创建,如果普通用户自定义角色必须要create role权限,建立角色的时候可以指定验证方式

 

1 创建角色 create role 角色名 not identified;

2 创建角色(数据库验证)

  这种方式必须角色名,口令放在数据库。当激活该角色时,必须提供口令,创建角色的时候需要为其提供口令

create role 角色名 indentified by 密码

当创建角色,角色没任何权限,

grant create session to 角色名 [with admin option]

赋予角色

 

grant  角色名 to 用户 [with admin option]

 

删除角色,dba执行,如果普通用户需要有drop any role系统权限

drop role 

 

显示所有角色

select * from dba_roles ;

显示角色具有的系统权限

select privilage,admin_option from role_sys_privs where role = ' 角色名' ;

显示角色具有的对象权限 dba_tab_privs 

 

精细访问控制

用户使用函数,策略实现更加细微的安全访问控制。如果使用精细访问控制,当客户段发出sql如select ,insert ,update...,Oracle会制动在sql语句后追加谓语(where ...)通过这样的可以使得不同的数据库户访问相同的表,返回不同的数据。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值