ORACLE10G经典实战第7章 系统安全管理.ppt
《ORACLE10G经典实战第7章 系统安全管理.ppt》由会员分享,可在线阅读,更多相关《ORACLE10G经典实战第7章 系统安全管理.ppt(80页珍藏版)》请在三一办公上搜索。
1、第7章 系统安全管理,数据库中保存了大量的数据,有些数据对企业是极其重要的,是企业的核心机密,必须保证这些数据和操作的安全。因此,数据库系统必须具备完善、方便的安全管理机制。Oracle中,数据库的安全性主要包括:(1)对用户登录进行身份认证。当用户登录到数据库系统时,系统对该用户的账号和口令进行认证,包括确认用户账户是否有效以及能否访问数据库系统。(2)对用户操作进行权限控制。当用户登录到数据库后,只能对数据库中的数据在允许的权限内进行操作。数据库管理员(简称DBA),对数据库的管理具有最高的权限。一个用户如果要对某一数据库进行操作,必须满足以下三个条件:(1)登录Oracle服务器时必须通
2、过身份验证;(2)必须是该数据库的用户或者是某一数据库角色的成员;(3)必须有执行该操作的权限。在Oracle系统中,为了实现这种安全性,采取了用户、角色和概要文件等的管理策略。,7.1 用户,Oracle有一套严格的用户管理机制,新创建的用户只有通过管理员授权才能获得系统数据库的使用权限,否则该用户只有连接数据库的权利。正是有了这一套严格的安全管理机制,才保证了数据库系统的正常运转,确保数据信息不泄露。7.1.1 创建用户用户(USER)就是使用数据库系统的所有合法操作者。Oracle 10g有两个基本用户:SYSTEM和SYS。创建用户就是建立一个安全、有用的帐户,并且这个帐户要有充分的权
3、限和正确的缺省设置值。用户既可以在OEM中创建,也可以使用SQL命令来创建。,7.1.1 创建用户,1.利用OEM创建用户(1)在图7.1所示的界面中,选中用户单击鼠标左键,进入“用户搜索”界面,如图7.2所示。图7.2列出了已存在的用户及帐户的状态、使用的概要文件和创建时间等用户基本信息。,图7.1 Oracle企业管理器,7.1.1 创建用户,图7.2用户搜索界面,7.1.1 创建用户,(2)单击“创建”按钮,进入“用户创建”界面,如图7.3所示。,图7.3一般信息选项页面,7.1.1 创建用户,(3)“一般信息”选项页面。“一般信息”选项页面包括如下几个方面:名称:将要创建的用户名,用户
4、名一般采用Oracle 10g字符集中的字符,最长可为30个字节。概要文件:指定分配给用户的概要文件。默认分配一个DEFAULT概要文件。验证:指定Oracle用来验证用户的方法。Oracle有3种验证用户的方法:口令、外部和全局。当使用口令验证时,选择“口令”选项;当使用操作系统用户名(在此是WIN2003的用户名)时,选择“外部”;当用户在多个数据库中被全局标识时,选择“全局”。输入口令和验证口令:只有在“验证”选择“口令”时才有效。只有在两者完全一致时才通过确认。口令即刻失效:撤消原来的口令,撤消后可以更改用户口令。默认表空间:为用户创建的对象选择默认表空间。临时表空间:为用户创建的对象
5、选择临时表空间。状态锁定:锁定用户的帐户并禁止访问该帐户。状态未锁定:解除对用户帐户的锁定并允许访问该帐户。输入新用户名称NICK;分配给用户的概要文件为DEFAULT;设定自己的口令如manager;其它选项均为默认值。,7.1.1 创建用户,(4)“角色”选项页面。角色选项页面如图7.4所示。在该选项页面中,可以把某些角色赋予新用户,这样新用户就继承了这些角色的权限。界面中的表格包括以下3列:角色:角色名称。管理理选项:表示新用户是否可以将角色授予其他用户或角色,默认情况下为禁用,用鼠标单击“管理选项”标记可以解除禁用。默认值:选中后,表示用户一旦登录到系统中,系统将会将所选角色设置为用户
6、默认的角色。新用户默认的拥有CONNECT角色的权限。单击“编辑列表”按钮,打开“修改角色”界面,如图7.5所示。“可用角色”列表框中列出了当前可用的角色。先在列表中选择要赋予新用户的角色,然后通过向右的箭头按钮或者双击该角色,把所选角色添加到“所选角色”列表中;通过向左的箭头或双击取消在“所选角色”列表中选中的角色。单击“确定”,界面返回到图7.5所示界面,此时在该界面可以看到刚才所选的角色。,7.1.1 创建用户,图7.4角色选项页面,图7.5修改角色界面,7.1.1 创建用户,(5)“系统权限”选项页面。“系统权限”选项页面如图7.6所示。在该选项页面,赋予新用户指定的权限。单击“编辑列
7、表”按钮,打开“修改系统权限”界面,如图7.7所示。,图7.6系统权限选项页面,图7.7修改系统权限界面,7.1.1 创建用户,(6)对象权限选项页面。对象权限选项页面如图7.8所示。在该选项页面中,可以为新用户授予操纵指定对象的权限。,图7.8对象权限选项页面,7.1.1 创建用户,(7)在“选择对象类型”下拉框选择对象,如表,单击添加,打开“表对象”添加界面,如图7.9所示。,图7.9添加对象权限界面,7.1.1 创建用户,(8)单击“手电筒”形状的按钮,进入“选择表对象”界面,如图7.10所示。勾选要赋予权限的表,单击“选择”按钮,返回到如图7.9所示的界面,在此时在“选择表对象”列表框
8、出现刚才选择所有表。,图7.10选择表对象界面,7.1.1 创建用户,在“可用权限”列表框选择相应权限,使用右箭头或双击鼠标左键把选中的系统权限添加到“所选权限”列表框中;使用左肩头取消“所选权限”列表框中所列出的所有已授予的权限。单击“确定”按钮,返回到图7.8所示界面,此时界面列出了所设置的表对象相应的权限情况。该界面列表列出了对象权限的信息:权限:表示已授予的权限。方案:表示已授予权限所属方案。对象:表示已授予的数据库对象。授权选项:是否可以授权给其他用户。选择要删除的对象权限,单击“删除”按钮可以删除该对象权限。根据实际情况,按照添加表对象权限的操作给新用户赋予相应的对象权限。,7.1
9、.1 创建用户,(9)限额选项页面。限额选项页面如图7.11所示。在该选项页面中对新用户指定对应表空间的大小限额。在列表中选择表空间并通过选择“无”、“无限制”或“值”单选按钮指定限额大小。在此对所有表空间选择“无”。,图7.11限额选项页面,7.1.1 创建用户,(10)使用者组切换权限选项页面。使用者组切换权限选项页面如图7.12所示。在该选项页面,可以为新用户授予相应的使用者组的权限。单击“修改”按钮,进入“修改使用者组”界面,如图7.13所示。,图7.12使用者组切换权限选项页面,图7.13修改使用者组界面,7.1.1 创建用户,(11)代理用户选项页面。代理用户选项页面如图7.14所
10、示。在该选项页面中可以指定可代理新用户的用户和指定新用户可代理的用户。,图7.14代理用户选项页面,7.1.1 创建用户,单击“可代理此用户的用户”栏的“添加”按钮,进入“用户选择”界面,如图7.15所示。勾选可代理新用户的用户,单击“选择”按钮,返回到图7.14所示界面,此时“可代理此用户的用户”栏出现刚才勾选的所有用户。若要删除某个用户,选中用户名前单选按钮,单击“移去”按钮,即可删除。,图7.15用户选择界面,7.1.1 创建用户,至此,新用户的所有信息以及权限都已设置完成,单击“显示SQL”按钮,可以查看创建该用户相应的SQL命令,如图7.16所示。在图7.15所示界面中单击“确定”按
11、钮,系统完成创建工作后返回到图7.2所示界面,完成创建用户操作过程。,图7.16创建新用户的SQL语句,7.1.1 创建用户,2.利用SQL语句创建用户可以使用CREATE USER命令来创建一个新的数据库用户帐户,但是创建者必须具有CREATE USER系统权限。语法格式:CREATE USER user_name/*将要创建的用户名*/IDENTIFIED BY password|EXTERNALLLY|GLOBALLY AS external_name/*表明Oracle如何验证用户*/DEFAULT TABLESPACE tablespace_name/*标识用户所创建对象的缺省表空间
12、*/TEMPORARY TABLESPACE tablespace_name/*标识用户的临时段的表空间*/QUOTA integer K|integer M|UNLIMTED ON tablespace_name/*用户规定的表空间存储对象,最多可达到这个定额规定的总尺寸*/PROFILE profile_name/*将指定的概要文件分配给用户*/DEFAULT ROLE role,nALLEXCEPT role,n NONEPASSWORD EXPIREACCOUNT LOCK|NULOCK/*帐户是否锁定*/,7.1.1 创建用户,2.利用SQL语句创建用户其中:user_name:将要
13、创建用户的名称。IDENTIFIED:表示Oracle如何验证用户。BY password:创建一个本地用户,该用户必须指定password进行登录。Password只能包含数据库字符集中的单字节字符,而不管该字符集是否还包含多字节字符。EXTERNALLY:创建一个外部用户,该用户必须由外部服务程序(如操作系统或第三方服务程序)来进行验证。GLOBALLY AS external_name:创建一个全局用户(global user),必须由企业目录服务器验证用户。DEFAULT TABLESPACE:标识用户所创建对象的缺省表空间为tablespace_name指定的表空间。如果忽略该子句就
14、放入SYSTEM表空间。TEMPORARY TABLESPACE:标识用户的临时段的表空间为tablespace_name指定的表空间。如果忽略该子句,临时段就缺省为SYSTEM表空间。QUOTA:允许用在以tablespace_name指定的表空间中分配空间定额并建立一个integer字节的定额,使用K或M来指定该定额,以千字节或兆字节为单位。PROFILE:将profile_name指定的概要文件分配给用户。该概要文件限制用户可使用的数据库资源的总量。DEFAULT ROLE:允许将一个或多个缺省角色分配给用户。Role是将要分配的预定义角色,n代表可以分配多个,中间用“,”隔离。ALLE
15、XCEPT role:把所有预定义的角色分配给用户,或把指定的那些角色除外的所有角色分配给用户。NONE:不分配给用户角色。PASSWORD EXPIRE:使用户的password失效。ACCOUNT LOCK:锁定用户的帐户并禁止访问。ACCOUNT UNLOCK:解除用户的帐户的锁定并允许访问该帐户。,7.1.1 创建用户,【例7.1】创建一个名称为AUTHOR的用户,口令为ANGEL,缺省表空间为USERS,临时表空间为TEMP。没有定额,使用缺省概要文件。CREATE USER AUTHOR IDENTIFIED BY ANGELDEFAULT TABLESPACE USERSTEMP
16、ORARY TABLESPACE TEMP;当使用CREATE USER语句创建用户时,该用户权限域为空。可以使用该用户登录到Oracle,但使用该用户不能进行任何操作。给用户授予权限可以使用GRANT语句来实现。语法格式:GRANT system_priv|role TO userWITH ADMIN OPTIN其中:system_priv:要授予的系统权限。如果把权限授予了user,Oracle就把权限添加到该用户的权限域,该用户立即可使用该权限。Role:要授予的角色,一旦授予用户角色,该用户就能行使该角色的权限。WITH ADMIN OPTIN:把向其他用户授权的能力传递给被授予者。,
17、7.1.1 创建用户,【例7.2】授予例7.1所创建的用户AUTHOR以DBA的角色。GRANT DBA TO AUTHOR;授予用户AUTHOR一些系统权限,并且该用户可以向其他用户授权。GRANT CREATE ANY TABLE,CREATE ANY VIEW TO AUTHORWITH ADMIN OPTION;【例7.3】重新创建用户AUTHOR,口令为ANGEL,缺省表空间为USERS,临时表空间为TEMP。没有定额,使用缺省概要文件,授予所有预定义角色,登录数据库前修改口令。DROP USER AUTHOR;CREATE USER AUTHOR IDENTIFIED BY ANG
18、ELDEFAULT TABLESPACE USERSTEMPORARY TABLESPACE TEMPPASSWORD EXPIRE;,7.1.2管理用户,1.利用OEM管理用户在如图7.2所示的界面中,查找并选择要更改的用户。也可以通过搜索功能查找具体某个用户,在搜索栏的“名称”文本框输入具体用户名称,如NICK,单击“开始”按钮,如果存在Nick用户,则显示在结果栏。选择NICK用户,单击“编辑”按钮,进入“编辑用户”界面,如图7.17所示,可以看出,针对某一用户的管理窗口和创建用户窗口相似,具体操作和创建用户也相似。,图7.17编辑用户界面,7.1.2管理用户,2.利用SQL语句管理用户
19、利用SQL语句的ALTER USER、GRANT USER和REVOKE命令也可以管理用户,但前提是执行者必须具有ALTER USER和REVOKE权限。但更改自己的口令不需该权限。(1)ALTER USER命令语法格式:ALTER USER user_nameIDENTIFIED BY passwordEXTERNALLYGLOBALLY AS external_nameDEFAULT TABLESPACE tablespace_nameTEMPORARY TABLESPACE tablespace_nameQUOTA integer K|integer M|UNLIMTED ON tabl
20、espace_namePROFILE profile_nameDEFAULT ROLE roleALLEXCEPT role NONEPASSWORD EXPIREACCOUNT LOCK|UNLOCK,7.1.2管理用户,其中:IDENTIFIED GLOBALLY AS:表明用户必须通过LDAP V3兼容目录服务(如Oracle Internet Directory)验证。只有当直接授给该用户的所有外部角色被收回时才能将验证用户访问的方法更改为IDENTIFIED GLOBALLY AS external_name。DEFAULT ROLE:只包含用GRANT语句直接授予用户的角色。不能用
21、DEFAULT ROLE子句去启用下列角色:没有授予用户的角色。通过其他角色授予的角色。由外部服务(如操作系统)或Oracle Internet Directory管理的角色。ALTER USER语句中其他关键字和参数与CREATE USER语句中的意思相同。(2)REVOKE命令语法格式:REVOKE system_priv|role FROM USER其中:system_priv是赋予用户的系统权限;role是赋予用户的角色。,7.1.2管理用户,【例7.4】赋予用户权限和角色。授予AUTHOR的定额USERS表空间中的100MB。ALTER USER AUTHORQUOTA 100M O
22、N USERS;锁定AUTHOR用户帐户。ALTER USER AUTHORACCOUNT LOCK;回收用户AUTHOR的DBA的角色。REVOKE DBA FROM AUTHOR;回收用户NICK对表XS修改的权限。REVOKE ALTER ON ADMIN.XS FROM NICK;回收用户NICK和AUTHOR对表XS删除和插入数据的权限。REVOKE DELETE,INSERT ON ADMINXS FROM NICK,AUTHOR;回收用户的权限时,如果回收的权限并没有赋予用户,那么系统会提示未赋予用户该权限。,7.1.2管理用户,3.删除用户在图7.11所示的窗口中,在用户文件夹
23、下选择要删除的用户,单击右键,在弹出的快捷菜单中选择“移去”,即可删除所选择的用户。使用DROP命令也可以从数据库中撤消一个用户。这个命令只有一个参数,即CASCADE,在撤消该用户之前,它撤消用户模式中的所有对象。如果用户拥有对象,必须指定CASCADE以撤消用户。下面给出一个样本DROP USER命令:DROP USER AUTHOR CASCADE;,7.2 权限和角色,当数据库较小、访问数据库的用户不多时,对用户在每个表上要求的特定访问进行授权还是可以接受的。但是,随着数据库的增大以及用户数量的增多,数据库的维护将会成为很麻烦的事情。在实际的权限分配方案中,通常是这样运用角色的,先由D
24、BA为数据库定义一系列的角色,然后再由DBA将权限分配给基于这些角色的用户。,7.2.1角色,1.两种角色(1)安全应用角色。DBA可以授予安全应用角色运行给定数据库应用时所有必要的权限。然后将该安全应用角色授予其他角色或者用户,应用可以包含几个不同的角色,每个角色都包含不同的权限集合。(2)用户角色。DBA可以为数据库用户组创建用户角色,赋予一般的权限需要。2.数据库角色(1)角色可以被授予系统和方案对象权限。(2)角色被授予其他角色。(3)任何角色可以被授予任何数据库对象。(4)授予用户的角色,在给定的时间里,要么启用,要么禁用。3.角色和用户的安全域每个角色和用户都包含自己唯一的安全域,
25、角色的安全域包括授予角色的权限。用户安全域包括对应方案中的所有方案对象的权限,授予用户的权限和授予当前起用的用户的角色的权限。用户安全域同样包含授予用户组PUBLIC的权限和角色。4.预定义角色Oracle系统在按照完成后就有整套的用于系统管理的角色,这些角色称为预定义角色。Oracle 10g的预定义角色比以前版本有所增加,表71是Oracle 10g预定义角色。,7.2.1角色,表7-1 Oracle10g预定角色,表7-1 Oracle10g预定角色,7.2.2创建角色,1.利用OEM创建角色创建角色的方法和创建用户的方法类似,使用的界面也有许多相同之处。在图7.1所示的界面中,选中“角
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ORACLE10G经典实战第7章 系统安全管理 ORACLE10G 经典 实战 系统安全 管理
链接地址:https://www.31ppt.com/p-2279475.html