【連線】禁止以作業系統認證方式登入資料庫
作業系統認證方式登入資料庫的含義是:只要是以oracle使用者登入的使用者都可以使用“sqlplus / as sysdba”方式連線到資料庫中。
出於安全的考慮,我們可能需要禁用這個特性。當然,如果以作業系統認證方式無法順利登入,也可以透過在這個方法來排查故障問題。
1.以作業系統認證方式登入資料庫的方法
1)最基本的方法就是使用“sqlplus / as sysdba”登入資料庫
[oracle@secdb admin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:00:10 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
斜槓“/”左面是使用者名稱,右面是密碼,這裡表示不給出使用者名稱和密碼一樣可以登入到資料庫系統中。
2)使用正確的使用者名稱和密碼登陸資料庫
[oracle@secdb admin]$ sqlplus sys/oracle as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:00:52 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
顯然,登入完全沒有問題。
3)使用錯誤的使用者名稱和密碼登陸資料庫
[oracle@secdb admin]$ sqlplus sys_1/oracle_1 as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:01:07 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
這種作業系統認證方式登入資料庫,即使使用的是錯誤的使用者名稱和密碼依然可以順利的登入到資料庫中。
2.禁用作業系統認證方式登入資料庫
禁用的方法很簡單,僅需在sqlnet.ora配置檔案中新增一條“SQLNET.AUTHENTICATION_SERVICES=(NONE)”即可。
調整sqlnet.ora檔案內容。
[oracle@secdb ~]$ vi $ORACLE_HOME/network/admin/sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES=(NONE)
3.驗證是否生效
1)必須使用正確的使用者名稱和密碼才能登陸到系統中
[oracle@secdb admin]$ sqlplus sys/oracle as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:58:29 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
2)使用正確的使用者名稱和錯誤的密碼進行登入測試
[oracle@secdb admin]$ sqlplus sys/oracle_1 as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:59:14 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
提示無效的使用者名稱和密碼,無法完成登入!
3)使用“sqlplus / as sysdba”登入方式進行驗證
[oracle@secdb admin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:58:05 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
ERROR:
ORA-01031: insufficient privileges
Enter user-name:
此處顯示許可權不足,不允許登入!
4.進一步提高系統的安全性
因為sqlnet.ora檔案預設條件下oracle使用者可以對其進行任意修改,我們可以透過調整sqlnet.ora檔案的owner和許可權的方式進一步提高系統的安全性。
1)預設條件下sqlnet.ora檔案的許可權和owner資訊
[oracle@secdb admin]$ ls -l sqlnet.ora
-rw-r--r-- 1 oracle oinstall 266 Dec 26 21:00 sqlnet.ora
2)調整sqlnet.ora檔案的owner和許可權資訊
[root@secdb admin]# chown root:root sqlnet.ora
[root@secdb admin]# chmod 744 sqlnet.ora
[root@secdb admin]# ls -l sqlnet.ora
-rwxr--r-- 1 root root 266 Dec 26 21:00 sqlnet.ora
調整之後,oracle使用者將再無許可權對sqlnet.ora檔案進行調整。
5.小結
作業系統認證方式連線資料庫是預設行為,這種方法給我們管理資料庫帶來了極大的便利。在得到便捷操作的同時帶來的是安全上的問題,權衡利弊,做出最後的選擇。
“預設值”並不總是最美麗的!
Good luck.
secooler
10.12.26
-- The End --
出於安全的考慮,我們可能需要禁用這個特性。當然,如果以作業系統認證方式無法順利登入,也可以透過在這個方法來排查故障問題。
1.以作業系統認證方式登入資料庫的方法
1)最基本的方法就是使用“sqlplus / as sysdba”登入資料庫
[oracle@secdb admin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:00:10 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
斜槓“/”左面是使用者名稱,右面是密碼,這裡表示不給出使用者名稱和密碼一樣可以登入到資料庫系統中。
2)使用正確的使用者名稱和密碼登陸資料庫
[oracle@secdb admin]$ sqlplus sys/oracle as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:00:52 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
顯然,登入完全沒有問題。
3)使用錯誤的使用者名稱和密碼登陸資料庫
[oracle@secdb admin]$ sqlplus sys_1/oracle_1 as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:01:07 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
這種作業系統認證方式登入資料庫,即使使用的是錯誤的使用者名稱和密碼依然可以順利的登入到資料庫中。
2.禁用作業系統認證方式登入資料庫
禁用的方法很簡單,僅需在sqlnet.ora配置檔案中新增一條“SQLNET.AUTHENTICATION_SERVICES=(NONE)”即可。
調整sqlnet.ora檔案內容。
[oracle@secdb ~]$ vi $ORACLE_HOME/network/admin/sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES=(NONE)
3.驗證是否生效
1)必須使用正確的使用者名稱和密碼才能登陸到系統中
[oracle@secdb admin]$ sqlplus sys/oracle as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:58:29 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
SQL>
2)使用正確的使用者名稱和錯誤的密碼進行登入測試
[oracle@secdb admin]$ sqlplus sys/oracle_1 as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:59:14 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
提示無效的使用者名稱和密碼,無法完成登入!
3)使用“sqlplus / as sysdba”登入方式進行驗證
[oracle@secdb admin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Sun Dec 26 21:58:05 2010
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
ERROR:
ORA-01031: insufficient privileges
Enter user-name:
此處顯示許可權不足,不允許登入!
4.進一步提高系統的安全性
因為sqlnet.ora檔案預設條件下oracle使用者可以對其進行任意修改,我們可以透過調整sqlnet.ora檔案的owner和許可權的方式進一步提高系統的安全性。
1)預設條件下sqlnet.ora檔案的許可權和owner資訊
[oracle@secdb admin]$ ls -l sqlnet.ora
-rw-r--r-- 1 oracle oinstall 266 Dec 26 21:00 sqlnet.ora
2)調整sqlnet.ora檔案的owner和許可權資訊
[root@secdb admin]# chown root:root sqlnet.ora
[root@secdb admin]# chmod 744 sqlnet.ora
[root@secdb admin]# ls -l sqlnet.ora
-rwxr--r-- 1 root root 266 Dec 26 21:00 sqlnet.ora
調整之後,oracle使用者將再無許可權對sqlnet.ora檔案進行調整。
5.小結
作業系統認證方式連線資料庫是預設行為,這種方法給我們管理資料庫帶來了極大的便利。在得到便捷操作的同時帶來的是安全上的問題,權衡利弊,做出最後的選擇。
“預設值”並不總是最美麗的!
Good luck.
secooler
10.12.26
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-682660/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 1.6.4.3. 使用作業系統認證連線資料庫作業系統資料庫
- Oracle RMAN 連線資料庫認證方法Oracle資料庫
- 系統登入認證流程對比(cookie方式與jwt)CookieJWT
- 【登陸認證】oracle的作業系統認證和口令檔案認證方式(轉載)Oracle作業系統
- 使用Oracle外部身份認證登入資料庫Oracle資料庫
- 認證系統之登入認證系統的進階使用 (二)
- WebForm登入頁面(連線資料庫)WebORM資料庫
- 在windows透過作業系統認證登入ORACLEWindows作業系統Oracle
- 在windows通過作業系統認證登入ORACLEWindows作業系統Oracle
- Oracle資料庫連線方式Oracle資料庫
- 作業系統認證與ORACLE密碼檔案認證方式作業系統Oracle密碼
- 使用hostname方式連線資料庫!資料庫
- javaweb專案(1)連線資料庫,登入註冊JavaWeb資料庫
- oracle登陸認證方式Oracle
- 不同作業系統上遮蔽oracle的作業系統認證方式作業系統Oracle
- 【Python】Django--認證系統-登入註冊PythonDjango
- Ubuntu部署Maxkey單點登入認證系統Ubuntu
- 建站篇-使用者認證系統-自定義登入系統
- RAC禁止某個客戶端登入資料庫客戶端資料庫
- MySQL 簡潔連線資料庫方式MySql資料庫
- ASP,access資料庫連線方式大全資料庫
- Oracle禁止connect / as sysdba方式登入Oracle
- mybatis連線資料庫的幾種方式MyBatis資料庫
- 禁止ssh連線時的確認提示
- oracle兩種登陸認證方式Oracle
- sqlplus 連線遠端資料庫系統SQL資料庫
- 禁用作業系統認證作業系統
- Oracle 作業系統認證Oracle作業系統
- Oracle作業系統認證Oracle作業系統
- 直播系統程式碼,登入時常用驗證方式實現
- MySQL登入驗證方式MySql
- Android連線網路資料庫的方式Android資料庫
- 資料庫表的連線方式及用法(一)資料庫
- Flask Session 登入認證模組FlaskSession
- passport API 認證 -- 多表登入PassportAPI
- 採用Duplicate不連線target資料庫的方式將檔案系統遷移到ASM資料庫ASM
- 用Navicat連線資料庫-資料庫連線(MySQL演示)資料庫MySql
- [20230306]os認證連線資料庫問題.txt資料庫