os認證簡介
oracle中,可以將新建立使用者或者把原來的使用者加入到oinstall組或dba等組中,然後使用這個使用者在安裝了資料庫的本地機器登陸或者使用安全的遠端連線登陸,可以作為sysdba登入,在資料庫級則不需要提供密碼。
比如,我們使用sqlplus登陸資料庫:
不需要密碼,這裡linux安裝了oracle之後,預設自帶os認證,檢視當前使用者屬組:
當前使用者,在oinstall和dba屬組中,所以可以通過os認證,不需要口令直接登陸,但是當我們連線hr使用者時,則會提示輸入密碼:
修改os認證配置檔案-sqlnet.ora
配置檔案位於$oracle_home/network/admin目錄下,(沒有新建乙個),linux下預設是支援os認證和口令(密碼)認證的所以不需要修改sqlnet.ora,如果是windows nt系統,則需要新增以下配置:
sqlnet.authentication_services=(nts)
關閉os認證sqlnet.authentication_services = (none)
待修改配置檔案後,發現os認證已關閉,需要驗證口令才能登陸。
oracle的口令檔案的作用是存放所有以sysdba或者sysoper許可權連線資料庫的使用者的口令,如果想以sysdba許可權遠端連線資料庫,必須使用口令檔案。
oracle口令檔案存放目錄:
修改口令檔案
orapwd file=$oracle_home/dbs/orapw$oracl_sid password=密碼 force=y
此時可能會出現錯誤,因為oracle12.2以後增強了密碼強度的要求,但是如果您依舊想使用短密碼的話可以寫成:
orapwd file=$oracle_home/dbs/orapworcl password=密碼 force=y format=12
//format=12使用12.2之前的密碼驗證模式
修改密碼
如果修改失敗,可能是remote_login_passwordfile引數的原因,通過命令檢視該引數值:
remote_login_passwordfile引數詳解
remote_login_passwordfile引數可以有三種取值:exclusive(預設)、none和shared。
none
shared
修改密碼也算許可權範圍內。所以如果通過使用者修改密碼,失敗請不要慌,檢視該引數值。
remote_login_passwordfile引數修改
示例: alter system set remote_login_passwordfile=exclusive scope=spfile;
修改完後,請重啟資料庫:
shutdown immediate
startup
再次檢視引數值!然後修改密碼,成功! ORACLE資料庫檢視使用者許可權
1.檢視所有使用者 select from dba users select from all users select from user users 2.檢視使用者或角色系統許可權 直接賦值給使用者或角色的系統許可權 select from dba sys privs select from u...
Oracle資料庫教程 使用者許可權管理
oracle 是面向使用者的,在 oracle 中一般只有乙個資料庫database,可以在資料庫中建立多個不同的使用者user,給使用者建立許可權和分配角色。而mysql是面向資料庫的,可以建立多個資料庫,在資料庫中建立表 索引等。oracle 建立使用者 oracle 中可以用create us...
Oracle資料庫(十三) 控制使用者許可權
資料庫安全性 系統許可權 對於資料庫的許可權 物件許可權 運算元據庫物件的許可權 超過一百多種有效的許可權 資料庫管理員 dba 具有高階許可權以完成管理任務,例如 oracle登入使用者為system使用者,system使用者是乙個dba dba使用create user語句建立使用者 使用atg...