仓酷云
标题:
MYSQL网页编程之Oracle数据库暗码文件的利用与保护
[打印本页]
作者:
金色的骷髅
时间:
2015-1-16 22:44
标题:
MYSQL网页编程之Oracle数据库暗码文件的利用与保护
据我的观察,现在有一个趋势,那些经过正式培训的数据库管理员DBA更倾向于选择一个专有关系数据库,例如Oracle。对于一些具有专门数据库管理员的比较大的环境来说,MySQL很难得到宠爱,这时候,关于MySQL是否真的具有良好的可扩展性的争论已经没有意义。oracle|数据|数据库提要:Oracle干系数据库体系以其出色的功能取得了普遍的使用,而包管数据库的平安性是数据库办理事情的主要内容。本文是笔者在总结Oracle数据库平安办理事情的基本上,对Oracle数据库体系暗码文件的创立、利用和保护作了具体的先容,供人人参考。
关头词:Oracle数据库暗码文件
在Oracle数据库体系中,用户假如要以特权用户身份(INTERNAL/SYSDBA/SYSOPER)登录Oracle数据库能够有两种身份考证的办法:即便用与操纵体系集成的身份考证或利用Oracle数据库的暗码文件举行身份考证。因而,办理好暗码文件,关于把持受权用户从远端或本机登录Oracle数据库体系,实行数据库办理事情,具有主要的意义。
Oracle数据库的暗码文件寄存有超等用户INTERNAL/SYS的口令及其他特权用户的用户名/口令,它一样平常寄存在ORACLE_HOME\DATABASE目次下。
1、暗码文件的创立:
在利用OracleInstanceManager创立一数据库实例的时侯,在ORACLE_HOME\DATABASE目次下还主动创立了一个与之对应的暗码文件,文件名为PWDSID.ORA,个中SID代表响应的Oracle数据库体系标识符。此暗码文件是举行初始数据库办理事情的基矗在此以后,办理员也能够依据必要,利用工具ORAPWD.EXE手工创立暗码文件,命令格局以下:
C:\>ORAPWDFILE=<FILENAME>PASSWORD=<PASSWORD>ENTRIES=<MAX_USERS>
各命令参数的寄义为:
FILENAME:暗码文件名;
PASSWORD:设置INTERNAL/SYS帐号的口令;
MAX_USERS:暗码文件中能够寄存的最年夜用户数,对应于同意以SYSDBA/SYSOPER权限登录数据库的最年夜用户数。因为在今后的保护中,若用户数超越了此限定,则必要重修暗码文件,以是此参数能够依据必要设置得年夜一些。
有了暗码文件以后,必要设置初始化参数REMOTE_LOGIN_PASSWORDFILE来把持暗码文件的利用形态。
2、设置初始化参数REMOTE_LOGIN_PASSWORDFILE:
在Oracle数据库实例的初始化参数文件中,此参数把持着暗码文件的利用及其形态。它能够有以下几个选项:
NONE:唆使Oracle体系不利用暗码文件,特权用户的登录经由过程操纵体系举行身份考证;
EXCLUSIVE:唆使只要一个数据库实例可使用此暗码文件。只要在此设置下的暗码文件能够包括有除INTERNAL/SYS之外的用户信息,即同意将体系权限SYSOPER/SYSDBA授与除INTERNAL/SYS之外的其他用户。
SHARED:唆使可有多个数据库实例可使用此暗码文件。在此设置下只要INTERNAL
/SYS帐号能被暗码文件辨认,即便文件中存有其他用户的信息,也不同意他们以SYSOPER/SYSDBA的权限登录。此设置为缺省值。
在REMOTE_LOGIN_PASSWORDFILE参数设置为EXCLUSIVE、SHARED情形下,Oracle体系搜刮暗码文件的序次为:在体系注册库中查找ORA_SID_PWFILE参数值(它为暗码文件的全路径名);若未找到,则查找ORA_PWFILE参数值;若仍未找到,则利用缺省值ORACLE_HOME\DATABASE\PWDSID.ORA;个中的SID代表响应的Oracle数据库体系标识符。
3、向暗码文件中增添、删除用户:
现在始化参数REMOTE_LOGIN_PASSWORDFILE设置为EXCLUSIVE时,体系同意除INTERNAL/SYS之外的其他用户以办理员身份从远端或本机登录到Oracle数据库体系,实行数据库办理事情;这些用户名必需存在于暗码文件中,体系才干辨认他们。因为不论是在创立数据库实例时主动创立的暗码文件,仍是利用工具ORAPWD.EXE手工创立的暗码文件,都只包括INTERNAL/SYS用户的信息;为此,在实践操纵中,大概必要向暗码文件增加或删除其他用户帐号。
因为仅被授与SYSOPER/SYSDBA体系权限的用户才存在于暗码文件中,以是当向某一用户授与或发出SYSOPER/SYSDBA体系权限时,他们的帐号也将响应地被到场到暗码文件或从暗码文件中删除。由此,向暗码文件中增添或删除某一用户,实践上也就是对某一用户授与或发出SYSOPER/SYSDBA体系权限。
要举行此项受权操纵,需利用SYSDBA权限(或INTERNAL帐号)连进数据库,且初始化参数REMOTE_LOGIN_PASSWORDFILE的设置必需为EXCLUSIVE。详细操纵步骤以下:
创立响应的暗码文件;
设置初始化参数REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE;
利用SYSDBA权限登录:CONNECTSYS/internal_user_passswordASSYSDBA;
启动数据库实例并翻开数据库;
创立响应用户帐号,对其受权(包含SYSOPER和SYSDBA):授与权限:GRANTSYSDBATOuser_name;
发出权限:REVOKESYSDBAFROMuser_name;
如今这些用户能够以办理员身份登录数据库体系了;
4、利用暗码文件登录:
有了暗码文件后,用户就能够利用暗码文件以SYSOPER/SYSDBA权限登录Oracle数据库实例了,注重初始化参数REMOTE_LOGIN_PASSWORDFILE应设置为EXCLUSIVE或SHARED。任何用户以SYSOPER/SYSDBA的权限登录后,将位于SYS用户的Schema之下,以下为两个登录的例子:
1.以办理员身份登录:
假定用户scott已被授与SYSDBA权限,则他可使用以下命令登录:
CONNECTscott/tigerASSYSDBA
2.以INTERNAL身份登录:
CONNECTINTERNAL/INTERNAL_PASSWORD
5、暗码文件的保护:
1.检察暗码文件中的成员:
能够经由过程查询视图V$PWFILE_USERS来猎取具有SYSOPER/SYSDBA体系权限的用户的信息,表中SYSOPER/SYSDBA列的取值TRUE/FALSE暗示此用户是不是具有响应的权限。这些用户也就是响应地存在于暗码文件中的成员。
2.扩大暗码文件的用户数目:
当向暗码文件增加的帐号数量凌驾创立暗码文件时所定的限定(即ORAPWD.EXE工具的MAX_USERS参数)时,为扩大暗码文件的用户数限定,需重修暗码文件,详细步骤以下:
a)查询视图V$PWFILE_USERS,纪录下具有SYSOPER/SYSDBA体系权限的用户信息;
b)封闭数据库;
c)删除暗码文件;
d)用ORAPWD.EXE新建一暗码文件;
e)将步骤a中猎取的用户增加到暗码文件中。
3.修正暗码文件的形态:
暗码文件的形态信息寄存于此文件中,当它被创立时,它的缺省形态为SHARED。能够经由过程改动初始化参数REMOTE_LOGIN_PASSWORDFILE的设置改动暗码文件的形态。当启动数据库事例时,Oracle体系从初始化参数文件中读取REMOTE_LOGIN_PASSWORDFILE参数的设置;当加载数据库时,体系将此参数与口令文件的形态举行对照,假如分歧,则更新暗码文件的形态。若企图同意从多台客户机上启动数据库实例,因为各客户机上必需有初始化参数文件,以是应确保各客户机上的初始化参数文件的分歧性,以免不测地改动了暗码文件的形态,形成数据库上岸的失利。
4.修正暗码文件的存储地位:
暗码文件的寄存地位能够依据必要举行挪动,但作此修正后,应响应修正体系注册库有关指向暗码文件寄存地位的参数或情况变量的设置。
5.删除暗码文件:
在删除暗码文件前,应确保以后运转的各数据库实例的初始化参数REMOTE_LOGIN_PASSWORDFILE皆设置为NONE。在删除暗码文件后,若想要以办理员身份连进数据库的话,则必需利用操纵体系考证的办法举行登录。
下面我将描述五个不使用MySQL的响亮理由。
作者:
山那边是海
时间:
2015-1-19 21:57
having子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having条件显示特定的组,也可以使用多个分组标准进行分组。
作者:
海妖
时间:
2015-1-28 13:02
从底层原理到表层引用,书籍多的很。个人认为没有什么那本书好?这样的说法。主要看和个人的学习方法是否适合。
作者:
简单生活
时间:
2015-2-5 21:34
而SQLServer如果能像Oracle一样可以为登陆分配如:5%的cpu,10%的内存。就可以解决这个漏洞。
作者:
活着的死人
时间:
2015-2-13 17:01
大侠们有推荐的书籍和学习方法写下吧。
作者:
小女巫
时间:
2015-3-4 00:31
总感觉自己还是不会SQL
作者:
乐观
时间:
2015-3-11 14:57
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
作者:
admin
时间:
2015-3-19 00:32
如果你是从“学习某一种数据库应用软件,从而获得应聘的资本和工作机会”的角度来问的话。
作者:
不帅
时间:
2015-3-26 23:23
同样会为索引视图等应用带来麻烦。看看行级和事务级的快照数据放在tempdb中,就能感觉到目前架构的尴尬。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2