Oracle認證

當前位置 /首頁/IT認證/Oracle認證/列表

oracle登陸有兩種認證方式

Oracle的技術廣泛應用於各行各業,其中電信、電力、金融、政府及大量製造業都需要Oracle技術人才,Oracle公司針對職業教育市場在全球推廣的專案,其以低廉的成本給這部分人群提供Oracle技術培訓。下面是小編整理的關於oracle登陸有兩種認證方式,歡迎大家參考!

oracle登陸有兩種認證方式

Password File/Operating System Authentication

1、os認證需要把登陸使用者加入到os相應的使用者組

Operating System Group UNIX User Group Windows User Group

OSDBA dba ORA_DBA

OSOPER oper ORA_OPER

本機

CONNECT / AS SYSDBA

CONNECT / AS SYSOPER

遠端

CONNECT /@net_service_name AS SYSDBA

CONNECT /@net_service_name AS SYSOPER

2、密碼檔案認證,密碼檔案在不同的os平臺下,路徑和預設的名稱不同。

ORAPWD FILE=filename PASSWORD=password ENTRIES=max_users force =y

REMOTE_LOGIN_PASSWORDFILE=none/exclusive/share

none/exclusive(可以修改增加使用者)/share(不可修改)

CONNECT oe/oe AS SYSDBA

select * from V$PWFILE_USERS;

[@more@]

Oracle登入認證有兩種方式,基於作業系統的登入認證,基於oracle的驗證。

可以通過改變檔案,可以修改oracle登入認證方式:

ENTICATION_SERVICES= (NTS)是基於操作系統驗證;ENTICATION_SERVICES= (NONE)是基於Oracle驗證;ENTICATION_SERVICES= (NONE,NTS)是二者共存。

經過測試,以上規則只適用於windows伺服器,在linux下規則如下:

預設情況下linux下的oracle資料庫檔案沒有ENTICATION_SERVICES引數,此時是基於作業系統認證和oracle密碼驗證共存的,加上ENTICATION_SERVICES引數後,不管ENTICATION_SERVICES設定為NONE或者NTS,都是基於oracle密碼驗證的。

Windows下設定oracle登入驗證為作業系統驗證方式的方法:

1:把os使用者加到ora_dba組

2:設定 ENTICATION_SERVICES = (NTS)

或者你可以重建口令檔案來改密碼,只不過原來授予sysdba和sysoper許可權的使用者,就不再具有這2個許可權了。

有一種oracle的登入方式是作業系統驗證登入方式,即常說的OS驗證登入方式,在SQL server中也有這種方式。

當用Windows的管理員帳戶登陸系統後登陸資料庫,只要加上 as sysdba,不管用什麼使用者名稱和密碼登陸,都正確,因為這時系統已經忽略了/ 兩邊的使用者名稱和密碼,預設就是sys使用者。

有些朋友經常使用connect / as sysdba登入,但不知道為什麼沒有提供使用者名稱和密碼就得到了sysdba的許可權。還認為這樣是不是不安全呢?

Oracle在常見的多使用者作業系統上都可以進行OS認證方式來登入。例如solaris,windows等等。

下面以常見的windows作業系統來說明看一下這個作業系統認證方式登入的原理。如果你的機器可以使用connect / as sysdba獲取sysdba的許可權,那麼下面的每一個過程你的機器上都會得到驗證,如果不能,按照下面的操作更改後,你也能以這種方式登入。

在命令列下敲入 進入計算機管理

選擇本地使用者和組—>組

看是不是有一個組的名字叫做ORA_DBA

雙擊改組可以看到裡面是不是有administrator使用者

想一想你是不是以administrator使用者登入的'呢?

再進入Oracle安裝目錄(即$ORACLE_HOME 一般是D:"oracle)"ora92"network"admin 找到檔案看看裡面的是不是有ENTICATION_SERVICES= (NTS)

如果這些都對的話,你就能已作業系統認證的方式(connect / as sysdba)來登入Oracle

接下來的問題是,如果你的資料很重要,出於安全考慮,希望禁止這種作業系統認證的方式。那麼該怎麼做呢?

很簡單,找到在剛才的第6步驟中的檔案,將ENTICATION_SERVICES= (NTS)改為ENTICATION_SERVICES=none即可。你再試一下看看會不會得到到如下結果:

ERROR:

ORA-01031: insufficient privileges

TAG標籤:登陸 Oracle #