《北大青鳥深圳嘉華與你一起探討Oracle數據庫安全問題(下)》要點:
本文介紹了北大青鳥深圳嘉華與你一起探討Oracle數據庫安全問題(下),希望對您有用。如果有疑問,可以聯系我們。
前面一篇我們講了一部分Oracle數據庫平安內容,這里繼續講述,分別從建立平安性策略方面系統講述.
系統平安性策略
(1)管理數據庫用戶:數據庫用戶是訪問Oracle數據庫信息的途徑,因此,應該很好地維護管理數據庫用戶的平安性.按照數據庫系統的大小和管理數據庫用戶所需的工作量,數據庫平安性管理者可能只是擁有create,alter,或drop數據庫用戶的一個特殊用戶,或者是擁有這些權限的一組用戶,應注意的是,只有那些值得信任的個人才應該有管理數據庫用戶的權限.
(2) 用戶身份確認:數據庫用戶可以通過操作系統,網絡服務,或數據庫進行身份確認,通過主機操作系統進行用戶身份認證的長處有:
A 用戶能更快,更便利地聯入數據庫;
B 通過操作系統對用戶身份確認進行集中控制:如果操作系統與數據庫用戶信息一致,Oracle無須存儲和管理用戶名以及暗碼;
C 用戶進入數據庫和操作系統審計信息一致.
(3) 操作系統平安性
A 數據庫管理員必需有create和delete文件的操作系統權限;
B 一般數據庫用戶不該該有create或delete與數據庫相關文件的操作系統權限;
C 如果操作系統能為數據庫用戶分配角色,那么平安性管理者必須有修改操作系統帳戶平安性區域的操作系統權限.
數據的平安性策略:
數據的生考慮應基于數據的重要性.如果數據不是很重要,那么數據的平安性策略可以稍稍放松一些.然而,如果數據很重要,那么應該有一謹慎的平安性策略,用它來維護對數據對象訪問的有效控制.
用戶平安性策略:
(1) 一般用戶的平安性:
A 密碼的平安性:如果用戶是通過數據庫進行用戶身份的確認,那么建議使用密碼加密的方式與數據庫進行連接.這種方式的設置方法如下:
在客戶端的oracle.ini文件中設置ora_encrypt_login數為true;
在服務器端的initORACLE_SID.ora文件中設置dbling_encypt_login參數為true.
B 權限管理:對于那些用戶很多,應用程序和數據對象很豐富的數據庫,應充分利用“角色”這個機制所帶的便利性對權限進行有效管理.對于復雜的系統環境,“角色”能大大地簡化權限的理.
(2) 終端用戶的平安性:
您必須針對終端用戶制定平安性策略.例如,對于一個有很多用戶的大規模數據庫,平安性管理者可以決定用戶組分類為這些用戶組創建用戶角色,把所需的權限和應用程序角色授予每一個用戶角色,以及為用戶分配相應的用戶角色.當處理特殊的應用要求時,平安性管理者也必須明確地把一些特定的權限要求授予給用戶.您可以使用“角色”對終端用戶進行權限管理.
數據庫管理者平安性策略:
(1) 掩護作為sys和system用戶的連接:
當數據庫創建好以后,立即更改有管理權限的sys和system用戶的暗碼,防止非法用戶訪問數據庫.當作為sys和system用戶連入數據庫后,用戶有強大的權限用各種方式對數據庫進行改動.
(2) 掩護管理者與數據庫的連接:
應該只有數據庫管理者能用管理權限連入數據庫,當以sysdba或startup,shutdown,和recover或數據庫工具(例如create,drop,和delete等)進行沒有任何限制的操作.
(3) 使用角色對治理者權限進行治理
應用程序開發者的平安性策略:
(1) 應用程序開發者和他們的權限數據庫應用程序開發者是唯一一類需要特殊權限組完成本身工作的數據庫用戶.開發者需要諸如create table,create,procedure等系統權限,然而,為了限制開發者對數據庫的操作,只應該把一些特定的系統權限授予開發者.
(2) 應用法式開發者的環境:
A 程序開發者不該與終端用戶競爭數據庫資源;
B 用程序開發者不克不及損害數據庫其他應用產品.
(3) free和controlled應用法式開發應用法式開發者有一下兩種權限:
A free development
應用程序開發者允許創建新的模式對象,包含table,index,procedure,package等,它允許應用程序開發者開發獨立于其他對象的應用程序.
B controlled development
應用程序開發者不允許創建新的模式對象.所有需要table,indes procedure等都由數據庫管理者創建,它保證了數據庫管理者能完全控制數據空間的使用以及拜訪數據庫信息的途徑.但有時應用程序開發者也需這兩種權限的混和.
(4) 應用程序開發者的角色和權限數據庫平安性管理者能創建角色來管理典型的應用程序開發者的權限要求.
A create系統權限經常授予給應用程序開發者,以至于他們能創建他的數據對象.
B 數據對象角色幾乎不會授予給應用法式開發者使用的角色.
(5) 加強應用程序開發者的空間限制作為數據庫平安性管理者,您應該特別地為每個應用程序開發者設置以下的一些限制:
A 開發者可以創立table或index的表空間;
B 在每一個表空間中,開發者所擁有的空間份額.應用程序管理者的平安在有許多數據庫應用程序的數據庫系統中,您可能需要一應用程序管理者,應用程序管理者應負責起以下的任務:
a)為每一個應用法式創建角色以及管理每一個應用法式的角色;
b)創建和管理數據庫應用法式使用的數據對象;
c)必要的話,維護和更新應用程序代碼和Oracle的存儲過程和程序包.
我相信有了以上的這些建議,作為一個Oracle的管理者絕對可以做好他本職的工作了.可是,我們再怎么努力,都始終得面對這樣一個現實,那就是Oracle畢竟是其他人開發的,而我們卻在使用.所以,Oracle到底有多少漏洞--我想這個不是你和我所能解決的.不過既然作為一篇討論Oracle數據平安的文章,我認為有必要把漏洞這一塊也寫進去,畢竟這也是“平安”必不可少的一部分.呵呵!
所以……
Oracle漏洞舉例:
1.Oracle9iAS Web Cache長途拒絕服務攻擊漏洞
2.Oracle 8.1.6的oidldapd中的漏洞
3.Oracle 9iAS OracleJSP 泄漏JSP文件信息漏洞
4.Linux ORACLE 8.1.5漏洞
總而言之一句話--“Oracle數據平安是一個博大而又精深的話題;如果你沒有耐心,就永遠不會得到它的精髓之所在.”希望大家能深入的去學習這篇文章,學好了也是百一而無一害.
用心辦妥學,深圳嘉華邀您加入互聯網隊伍!
微信號:jhzyjy(長按復制)
我們專注IT教育,迎接你前來咨詢!
《北大青鳥深圳嘉華與你一起探討Oracle數據庫安全問題(下)》是否對您有啟發,歡迎查看更多與《北大青鳥深圳嘉華與你一起探討Oracle數據庫安全問題(下)》相關教程,學精學透。維易PHP學院為您提供精彩教程。