oracle操作系统认证和口令文件认证

操作系统认证和口令文件认证的三个因素

1.       Oracle sqlnet.ora中的SQLNET.AUTHENTICATION_SERVICES参数

2.       静态参数remote_login_passwordfile

3.       Oralce口令文件

Oracle登录时按照以上顺序依次检查

Oracle sqlnet.ora中的SQLNET.AUTHENTICATION_SERVICES参数

1.       SQLNET.AUTHENTICATION_SERVICES=(ALL)

LINUX系统,支持os认证和口令认证

window系统,不支持该参数

2.       SQLNET.AUTHENTICATION_SERVICES=(NTS)

仅用于windows系统,此设置同时支持os认证和口令认证,只有在设置了(NTS)值之后运行在windows系统上的oracle才支持os认证

3.       SQLNET.AUTHENTICATION_SERVICES=(NONE)

Windowlinux一样,支持只口令认证

4.       不设置SQLNET.AUTHENTICATION_SERVICES的值

LINUX系统,支持os认证和口令认证

window系统,只支持口令认证

静态参数remote_login_passwordfile

1.       静态参数remote_login_passwordfile的值

a.       none远程用户不能通过sysdbasysoper登录

b.       exclusive可以远程通过sysdbasysoper登录

c.       shared口令文件可以被多个数据库共享,但只能存放sys用户的口令,口令的文件名为:orapw

2.       注意事项

a.       两个实例在exclusive的模式下也能公用一个orapw文件,但必须符合以下条件:没有加sys之外的用户到sysdba组中;一个实例启动,另一个实例再启动时会修改orapw的实例信息。

b.       Exclusive模式会写实例名信息到口令文件

c.       Shared模式不会写实例名到口令文件

 

 

Oralce口令文件

1.       路径:

Linux$ORACLE_HOME/dbs/orapw$SID $ORACLE_HOME/dbs/orapw

Window%ORACLE_HOME%/database/PWD<SID>.ora

2.       存放内容:存放sysdbasysoper角色用户的口令

3.       重建口令文件:orapwd命令

 

有价值的例子

1.       Os验证:

SQLNET.AUTHENTICATION_SERVICES=(All)

remote_login_passwordfile=none

2.       口令文件认证:

SQLNET.AUTHENTICATION_SERVICES=None

remote_login_passwordfile=exclusive/shared

3.       两种验证都失败:

SQLNET.AUTHENTICATION_SERVICES=None

remote_login_passwordfile=none

4.       两种验证都成功:

SQLNET.AUTHENTICATION_SERVICES=All

remote_login_passwordfile=exclusive

 

 

 

 

你可能感兴趣的:(oracle,linux,windows,数据库,OS,login)