来源:网海拾贝
(二)来自内部的其它一个隐患--用户治理以及密码结果
在这里,着实作为一个差未几点的数据库治理员都很清楚,Oracle数据库本身就运用了许多种才智来增强数据库的恬静性,屡屡见到的就有密码,角色,权限等等。那么我们就从最大概纰漏的DBSNMP说起:
Oralce数据库若是给与典型安装后,主动创设了一个叫做DBSNMP的用户,该用户担任运转Oracle系统的智能署理(Intelligent Agent),该用户的缺省密码也是“DBSNMP”。若是遗忘批改该用户的口令,任何人都可以经过该用户存取数据库系统。如今我们来看一下该用户具有哪些权限和角色,然厥后解析一下该用户对数据库系统能够形成的丧掉。
启动SQL/PLUS按次,运用该用户登录进入:
SQL> select * from session_privs; CREATE SESSION ALTER SESSION UNLIMITED TABLESPACE CREATE TABLE CREATE CLUSTER CREATE SYNONYM CREATE PUBLIC SYNONYM CREATE VIEW CREATE SEQUENCE CREATE DATABASE LINK CREATE PROCEDURE CREATE TRIGGER ANALYZE ANY CREATE TYPE CREATE OPERATOR CREATE INDEXTYPE
可以看到该用户不是SYS或SYSTEM治理用户,然则,它却具有两个系统级权限:UNLIMITED TABLESPACE和CREATE PUBLIC SYNONYM。
看到这两个权限你应该马上想到,这些都是恬静隐患,尤其是UNLIMITED TABLESPACE,它是损坏数据库系统的进击点之一。若是这时间你还仍旧认为,即便有人使用这个没有批改的口令登录进数据库也形成不了什么丧掉的话,我就不得不提醒你:该用户具有UNLIMITED TABLESPACE的系统权限,它可以写一个小的剧本,然后歹意将系统用残余数据填满,这样数据库系统也就无法运转,并将直接招致最终的瘫痪。今朝许多半据库系统都要求7X24的任务,若是呈现了系统用残余数据填满的状态,那么,等数据库系统规复时,生怕不成挽回的丧掉已经形成了。
然则除了DBSNMP另有许多其他的用户,怎样办呢?让我们先看一下今朝普及存在于Oracle数据库中的用户治理结果:
(1)权限过大年夜:对ORACLE数据库编程和阅读的伟大用户屡屡具有DBA (数据库治理员权限),能对数据库系统做任何批改或删除。
(2)恬静性差:许多ORACLE用户缺省存储位置都在系统表空间,这样不单影响系统的正常任务,而且分歧用户的数据信息相互影响、透明,掉密性差。随着数据的赓续介入,有能够使整个数据库系统溃逃。
(3)密码有纪律:在ORACLE调试初期组成的用户名和密码分歧的不良习气保存到如今;系统用户SYS和SYSTEM的密码也众所皆知。
晓得了这些普及的“瑕玷”,我们怎样做呢?下面是我的一些发起:
(1)ORACLE DBA (数据库治理员)的典型
·SUN Solaris行使系统下ORACLE用户密码应严格掉密,毫不应把密码设成ORACLE;并指定专门的数据库治理员定期批改。
·ORACLE初始化竖立的SYS和SYSTEM系统治理员用户密码应由原来MANAGER改成其它不易被记忆的字符串。
·ORACLE WEB SERVER的治理端口具有DBA阅读数据库的手段,因此其治理者ADMIN的密码也应掉密,不应把密码设成MANAGER;并指定专门的数据库治理员定期批改。
·ORACLE DBA最好在SUN SPARC效力器节制台上用窗口式界面完成治理。条件是ORACLE用户启动效力器,然后在窗口式命令行下输入SVRMGRM,即启动了ORACLE SERVER MANAGER菜单式治理;用SYSDBA身份登录后,就可做数据库系统维护任务了
(2)SQL*PLUS编程用户的典型
·存储布局的典型
考虑到用SQL*PLUS编程可完成各行各业、各公司、各部分多种多样的使用需求,我们的SQL*PLUS编程用户也应该朝这个偏向典型:分歧品种的使用必须有差其它用户;分歧品种的使用必须有差其它存储位置,包括物理文件、缺省表空间、且自表空间的创设和筹划:当预备编写某一较大年夜规模(从ORACLE数据量和面向用户量考虑)使用按次时,起首应该创设一个逻辑的存储位置-表空间,同时界说物理文件的存放途径和所占硬盘的巨细。
①、物理文件缺省的存放途径在/oracle_home/dbs下,在命令行下用UNIX指令df -k 可搜检硬盘资天职区的运用状态。若是oracle_home运用率达90‰以上,而且有一个或多个较为空闲的硬盘资天职区可以使用,我们最好把物理文件缺省的存放途径改到较为空闲的硬盘资天职区途径下。在此途径下我们可以这样筹划资源物理文件的存储:
xxx表空间
xxx行业/ xxx公司/ xxx 部分/ xxx 效力.dbf
DEMO表空间
default_datafile_home1/col /elec/sys4/demo1.dbf
default_datafile_home1/col /elec/sys4/demo2.dbf
公司系统四部摹拟演示系统物理文件
HUMAN表空间
default_datafile_home1/col/elec/human/human.dbf
公司人事部人事治理系统物理文件
BOOK表空间
default_datafile_home1/col/elec/book/book.dbf
公司质料室图书治理系统物理文件
QUESTION表空间
default_datafile_home1/col/elec/client/question.dbf
公司客户效力部结果库系统物理文件
PC表空间
default_datafile_home1/col/chaoxun/client/pc.dbf
公司PC机售后效力系统物理文件
……表空间
default_datafile_home2/……………………………
等等
分析:其中default_datafile_home1指oracle_home/dbs;default_datafile_home2指较为空闲的硬盘资天职区途径。
②、物理文件的巨细根据使用系统的数据量、数据工具、按次包的若干来定。伟大用于摹拟演示的小系统,表空间初始的物理文件为2M即能合意要求,若是信息量满,还可以添加物理文件,扩大表空间(每次扩大巨细也可暂定为2M);伟大现实运转的使用系统可恰当添加表空间初始的物理文件巨细,但也不要一次分配太大年夜(由于不易给与空间,却易扩大空间),这也需求根据具体状态具体解析:信息量大年夜、需长时间生存的使用在条件答应状态下,表空间可以大年夜到几百M甚至上G;信息量小、短期屡屡革新的使用,表空间可以节制在2M以下。
③、表空间的称照应该给与同系统使用类似的英文字符或字符缩写,表空间所对应的一个或多个物理文件名也应有相干性。分歧用户所处的缺省表空间分歧,存储的信息就不能相互接见。这比把所无效户信息都储存在系统表空间,恬静性大年夜大年夜进步了。若是用ORACLE WEB SERVER治理端口创设的用户,其缺省和且自表空间肯定是系统表空间,DBA切记要窜改用户的缺省表空间。且自表空间存放且自数据段,处置惩罚一些排序、吞并等中央行使,根据现实使用的需求可以把它们放在专门创设的表空间里;若是系统表空间大年夜,也可以把它们放在系统表空间。用户创设的数据索引最好和数据文件分开存放在分歧表空间,以裁汰数据争用和进步照应速率。
版权声明: 原创作品,答应转载,转载时请务必以超链接体例标明文章 原始出处 、作者信息和本声明。不然将清查功令责任。