ORACLE驗證方式學習

oracle數據庫有兩種操作系統驗證方式:

1.操作系統驗證方式

2.口令文件驗證方式


首先我們來了解三個相關參數:

1.在$ORACLE_HOME/network/admin下的sqlnet.ora文件中的QLNET.AUTHENTICATION_SERVICES

2.REMOTE_LOGIN_PASSWORDFILE參數

3.口令文件orapwd<SID>.ora

三者協同完成身份驗證


QLNET.AUTHENTICATION_SERVICES=(NONE)  使用口令文件驗證方式

QLNET.AUTHENTICATION_SERVICES=(NTS)     操作系統驗證,不適用口令文件(注:WINDOWS操作系統專用的,對                                           linux、unix不適用的)

QLNET.AUTHENTICATION_SERVICES=(ALL)   操作系統驗證和口令文件都可以


REMOTE_LOGIN_PASSWORDFILE=NONE          此時不使用口令文件,操作系統驗證

REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE     使用口令文件,但只有一個數據庫實例可以使用此文件。系統允許將                                           SYSOPER/SYSDBA授予除INTERNAL/SYS以外的其他用戶,且以具有這類                                         身份的其他用戶登錄是有效的 

REMOTE_LOGIN_PASSWORDFILE=SHARED        使用口令文件,可有多個數據庫實例使用此文件,但是此設置下
                                        只有INTERNAL/SYS帳號能被識別,即使文件中存有其他用戶的信息,                                         也不允許他們以SYSOPER/SYSDBA登錄
    


在windows下QLNET.AUTHENTICATION_SERVICES=(ALL)或者QLNET.AUTHENTICATION_SERVICES=(NTS)才能使用操作系統驗證方式。此時REMOTE_LOGIN_PASSWORDFILE=SHARED|EXCLUSIV|NONE 都可以     


在linux和unix下,QLNET.AUTHENTICATION_SERVICES=(ALL)或者不設置QLNET.AUTHENTICATION_SERVICES的情況下,才能使用操作系統驗證方式。此時REMOTE_LOGIN_PASSWORDFILE=SHARED|EXCLUSIV|NONE 都可以 


只有在QLNET.AUTHENTICATION_SERVICES=(NONE), REMOTE_LOGIN_PASSWORDFILE=SHARED|EXCLUSIV的情況下才是口令文件驗證方式   











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章