Oracle的操作系統認證(/ as sydba 登錄方式)


有一種oracle的登錄方式是操作系統驗證登錄方式,即常說的OS驗證登錄方式,在SQL server中也有這種方式。 有些朋友經常使用connect / as sysdba登錄,但不知道為什么沒有提供用戶名和密碼就得到了sysdba的權限。還認為這樣是不是不安全呢?

Oracle在常見的多用戶操作系統上都可以進行OS認證方式來登錄。例如solaris,windows等等。 下面以常見的windows操作系統來說明看一下這個操作系統認證方式登錄的原理。如果你的機器可以使用connect / as sysdba獲取sysdba的權限,那么下面的每一個過程你的機器上都會得到驗證,如果不能,按照下面的操作更改后,你也能以這種方式登錄。

  1. 在命令行下敲入compmgmt.msc 進入計算機管理
  2. 選擇本地用戶和組—>組
  3. 看是不是有一個組的名字叫做ORA_DBA
  4. 雙擊改組可以看到里面是不是有administrator用戶
  5. 想一想你是不是以administrator用戶登錄的呢?
  6. 對於11g,再進入Oracle安裝目錄(即$ORACLE_HOME )---->product---->network---->admin 找到sqlnet.ora文件看看里面的是不是有SQLNET.AUTHENTICATION_SERVICES= (NTS)
  7. 如果這些都對的話,你就能已操作系統認證的方式( / as sysdba)來登錄Oracle

接下來的問題是,如果你的數據很重要,出於安全考慮,希望禁止這種操作系統認證的方式。那么該怎么做呢? 很簡單,找到在剛才的第6步驟中的sqlnet.ora文件,將SQLNET.AUTHENTICATION_SERVICES= (NTS)改為SQLNET.AUTHENTICATION_SERVICES=none即可。你再試一下看看會不會得到到如下結果: ERROR: ORA-01031: insufficient privileges 警告: 您不再連接到 ORACLE。

如果你的機器不能以系統認證的方式登錄,檢查以上幾個步驟,你總可以找到原因的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM