代码改变世界

Oracle Database Administrator验证模式

2009-08-20 10:10  hyddd  阅读(1235)  评论(0编辑  收藏  举报

下图清楚地描述了Oracle Database Administrator的身份验证模式。


Oracle的验证模式有2种:

(1).Os Authentication:通过登陆操作系统的账号验证身份。

(2).Password Authentication:通过与Password file中的账号做匹对来验证身份。

从上图可以知道,我们有5种方式调用上面2种验证模式:

1.验证方式1

所谓“Local”包括两种情况:

(1).你直接登陆本机的Linux(界面/命令行)。

(2).你用putty等工具连接一个远端的Linux服务器,并登陆Linux(命令行)。

登陆之后,你就可以对数据库进行操作了。


如果你登陆系统的账号是属于dba这个Group的话。那么你就可以通过验证方式1直接登陆sqlplus,并操作数据库。


这里sqlplus并不要求我们输入登陆的账号密码,直接就可以登录sqlplus并对数据库进行操作。这是因为,我们登陆Linux的账号属于Group=502(dba)。而Oracle认为,如果操作系统账号已经属于dba这个组,那么这个操作系统的账号已经有足够权限对Oracle进行任何操作,所以sqlplus不会再要求在登录时输入sysdba的账号密码(也就说:不需要使用password file)。它的验证方式就如图1所示。

2.验证方式2


如果当登陆Linux的账号不属于group=501(dba)呢?比如:root。见下图:


当登陆系统的账号不属于group=501(dba)时,就算是root,也必须输入Oracle账号密码才能通过验证,也就是所谓的“使用Password file”。

3.验证方式3


什么是Remote呢?

比如:现在我们在Window下用sqlplus/其他工具连接处于远端的Oracle数据。此时,对于Oracle数据库而言,我们处在远端(Remote)。

什么是Secure Connection呢?

所谓Secure Connection,就是使用SSL或者其他加密算法对传输内容进行加密。比如:你在使用Net Configuration Assistent连接数据库时,会有这样一个选项:


其中,TCPS就代表Secure的意思!

当你选择使用TCPS协议时,你就可以使用OS Authentication的方式认证。

4.验证方式4


与验证方式3同理,不过使用的是Password file这种验证方式。

5.验证方式5


在使用工具连接远端数据库时,如果不使用Secure Connection,那么就只能使用Password file验证用户身份。