(16)--3.2 权限管理大型数据库技术.doc

上传人:奉*** 文档编号:96400675 上传时间:2023-11-22 格式:DOC 页数:7 大小:23.17KB
返回 下载 相关 举报
(16)--3.2 权限管理大型数据库技术.doc_第1页
第1页 / 共7页
(16)--3.2 权限管理大型数据库技术.doc_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《(16)--3.2 权限管理大型数据库技术.doc》由会员分享,可在线阅读,更多相关《(16)--3.2 权限管理大型数据库技术.doc(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、权限管理权限是用户对数据库所能执行的行为,如执行SOL语句或访问对象的权力。如果没有对新户授予一定的权限,则用户不能执行任何操作,因此首先需要给用户授予基本的权限,这样用户才能够登录数据库,进而在所属方案中进行创建、删除、修改数据库对象等操作。如果不允许进行相应操作,可以通过回收其权限来达到对数据库相应的安全控制。用户在ORACLE数据库中能够做的任何事情都是通过授权得到的。用户不能进行超出其拥有权限的操作,ORACLE数据库使用权限控制来控制用户对数据库的操作。ORACLE数据库中的权限分为两大类:系统权限和对象权限。一、系统权限ORACLE数据库中有100多种不同的系统权限,每一种系统权限

2、允许用户执行一种特殊的数据库操作或一类数据库操作。ORACLE有两大类主要的系统级权限:一类是数据库级别的某种操作能力,如创建表空间、创建用户等;另一类是对数据库某一类对象的操作能力,名称中带ANY 关键字和不带ANY关键字的权限。带有ANY的权限可以使ORACLE用户在任何ORACLE账号中执行指定的命令。不带ANY的权限,则只能够在自己的ORACLE账号中执行指定的命令。例如,当用户具有CREATE TABLE权限时,可以在其模式中创建表;当用户具有CREATE ANY TABLE权限时,可以在任何模式中创建表。1利用SQL命令授予系统权限如果用户需要在数据库中执行某种操作,那么事先应具有

3、该操作对应的系统权限。系统权限可以由具有DBA角色的用户授权,通常由sys或system用户执行授权操作;也可以由对该权限具有WITH ADMIN OPTION选项的用户授权。授权语法格式为:GRANT SYSTEM_PRIV,SYSTEM_PRIV,.TO PUBLIC|ROLE|USER,PUBLIC|ROLE|USER.WITH ADMIN OPTION 其中各参数的意义如下:SYSTEM_PRIV:表示要授予的系统权限的名称,该选项允许为用户同时授予多个系统权限,之间用逗号隔开。USER:表示获得该系统权限的用户名称,该选项允许同时为多个用户授予相同的权限,之间用逗号隔开。ROLE:表

4、示被授予的角色。PUBLIC:表示对系统中所用用户授权,可以使用它为系统中的每个用户快速设定权限。WITH ADMIN OPTION:它是可选项,表示将系统权限授予某个用户后,该用户不仅获得该权限的使用权,还获得该权限的管理权,包括可以将该权限继续授予其它用户,或从其它用户处回收该权限。该选项的影响力较大,要慎重使用。例:以system用户连接数据库后,创建进行usera和userb,并为他们授予CREATE SESSION的系统权限。CONN SYSTEM/PASSWORD;CREATE USER usera IDENTIFIED BY usera;CREATE USER userb IDE

5、NTIFIED BY userb;GRANT CREATE SESSION TO usera WITH ADMIN OPTION ;CONN usera/usera;GRANT CREATE SESSION TO userb ;CONN userb/userb;2利用SQL命令回收系统权限当某个用户不再需要系统权限时可以将该权限回收,使用REVOKE语句可以回收已经授予用户(或角色)的系统权限,执行回收系统权限操作的用户必须具有授予相同系统权限的能力。只要他具有DBA的角色或对该系统权限具有WITH ADMIN OPTION选项的用户都可以执行回收该系统权限的操作。回收系统权限的语法格式为。R

6、EVOKE SYSTEM_PRIV,SYSTEM_PRIV,.FROM PUBLIC|ROLE|USER,USER|ROLE|PUBLIC.例:回收已经授予用户userb的CREATE SESSION系统权限。CONN SYSTEM/PASSWORD;REVOKE CREATE SESSION FROM userb;说明:在拥有系统权限时创建的任何对象在回收权限后都不受影响。如果从PUBLIC用户处回收某种系统权限,则那些直接被授予这种权限的用户并不受任何影响。二、对象权限管理对象权限是指访问其它用户模式对象的权力。ORACLE数据库的对象主要是指表、索引、视图、序列、同义词、过程、函数、包、

7、触发器等。比如对表或视图对象执行INSERT、DELETE、UPDATE、SELECT操作时,都需要获得相应的权限ORACLE才允许用户执行。创建对象的用户拥有该对象的所有对象权限。对象权限的设置实际上是对象的所有者给其它用户提供操作该对象的某种权力的一种方法。1对象权限分类相对于数量众多的系统权限而言,对象权限较少,而且容易理解。ORACLE中常见的对象权限如表1所示。表1 ORACLE中常见的对象权限权限名称适应的对象类型表视图序列进程快照SELECT*INSERT*UPDATE*DELETE*EXECUTE*ALTER*INDEX*REFERENCES*2对象权限的授权如果用户需要对数据

8、库中某个对象执行操作,那么事先应具有该操作对应的对象权限。对象权限可以由具有DBA角色的用户授权,通常由sys或system用户执行授权操作;也可以由对该权限具有WITH GRANT OPTION选项的用户授权;还可以由该对象的所有者授权。其命令格式如下: GRANTobject_privilege,object_privilege ON object_name TO user_name,user_nameWITHGRANTOPTIONJ其中各参数的意义如下: object_privilege:表示要授予的对象权限的名称,该选项允许授予一个对象的多项权限,之间用逗号隔开。object_name

9、:表示权限操作的对象名称。user_name:表示获得对象权限的用户名称,该选项允许同时为多个用户授予相同的权限,之间用逗号隔开。WITH GRANT OPTION:它是可选项,表示将对象权限授予某个用户后,该用户不仅获得该权限的使用权,还获得该权限的管理权,包括可以将该权限继续授予其他用户或从其他用户处回收该权限。该选项的影响力较大、要慎重使用。例:将SCOTT模式下emp表的SELECT对象权限授予用户usera,usera再将emp表的SELECT对象权限授予用户userb。相应操作过程为: 使用SCOTT用户连接数据库。SQLCONN SCOTT/tiger; 为用户usera授予em

10、p表的SELECT对象权限。SQLGRANT SELECT ON emp TO usera WITH GRANT OPTION; 使用usera连接数据库。SQLCONN usera/usera; 为用户userb授予emp表的SELECT对象权限。SQL GRANT SELECT ON scott.emp TO userb;3对象权限的回收若不再允许用户操作某个数据库对象,那么应该将分配给该用户的权限回收,使用REVOKE语句可以回收已经授予用户(或角色)的对象权限,执行回收对象权限操作的用户同时必须具有授予相同对象权限的能力。其语法格式如下:REVOKE object_privilege

11、,object_privilege ON object_name FROM user_name , user_name;在使用REVOKE命令执行回收权限的操作时,需要注意两点:回收权限的用户不一定必须是授予权限的用户,可以是任一个具有DBA角色的用户;也可以是该数据库对象的所有者;还可以是对该权限具有WITH GRANT OPTION选项的用户。对象权限的回收具有级联的特性,也就是说如果取消了某个用户的对象权限,那么由该用户使用WITH GRANT 0P110N选项授予其他用户的权限一同被回收。例: 回收用户usera查询SCOTT模式下emp表的权限。相应操作过程为: 使用SCOTT用户连接数据库。SQLCONN SCOTT/tiger; 回收用户usera查询SCOTT模式下emp表的权限。SQLREVOKE SELECT ON emp TO usera; 使用usera连接数据库,验证其是否具有查询SCOTT模式下emp表的权限。SQLCONN usera/usera;SQLSELECT * FROM scott.emp; 使用userb连接数据库,验证其是否具有查询SCOTT模式下emp表的权限。SQLCONN userb/userb;SQLSELECT * FROM scott.emp; 本节课我们学习了如何进行权限授权和回收,下节课我们将学习角色管理。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁