&HTTP://www.aliyun.com/zixun/aggregation/37954.html">nbsp;
對電信企業而言,資料庫安全至關重要。 試想充值系統出了問題會怎樣?手機使用者在月末查詢帳單的時候系統出現問題會怎樣?下面是某電信企業資料庫運維人員在資料庫安全方面的一些心得,以及啟明星辰資料庫安全專家給出的建議,希望能對大家有所啟迪和借鑒。
一、資料庫版本與元件選擇
1. 對資料庫使用較高、較穩定的資料庫版本,避免一些BUG觸發引發的業務影響,比如一個ORA-04031,引發了結算系統share_pool的錯,導致應用程式連結失敗。
2. 建庫的時候,明確生產資料庫所需要使用的Oracle元件,只選擇滿足使用環境的最小元件集。
二、表管理
1. 備份表、臨時表,正常化模式管理。
2. 使用獨立的模式存儲獨立的業務物件。
3. DDL創建備份或臨時物件說明變更管理存在風險,需要強化變更管理。
4. 一個schema中,存儲的都是為完成某一個系統或模組而設計的表,不能將其他用途的資料表混合存儲在該schema下。
5. 將臨時表、備份表進行獨立的schema存儲管理,分離備份表和臨時表,同時能夠避免對業務資料存儲造成空間碎片和性能影響,從而能夠有效的降低資料備份和清理操作對業務運行的影響。
三、使用者許可權安全
1. 對於絕無必要的使用者,清理出資料庫。 如使用者Scott為Oracle的測試使用者,在生產環境中,應該刪除該使用者及其相關物件,或者將其轉移到測試環境中。
2. 對於已經被 LOCKED 的Oracle內置使用者,我們需要評估是否在生產環境中使用,如果不需要使用,則可刪除相關元件和使用者。
3. 嚴格使用者角色管理,防止許可權授予過高,收回使用者所具有的 resource 角色,創建許可權限制更加嚴格的自訂角色。
4. 收回使用者中不需要的角色。
四、訪問安全
1. 規範資料庫管理軟體,實現管理軟體的標準、統一化。
2. 為了防止連入資料庫的應用程式存在後門,造成資料庫安全隱患,檢查所有連接資料庫程式的安全性。 通過使用門戶監控登錄資料庫,禁止對資料庫的直接操作。
3. 對已經連接的IP網段進行正常化、統一化的管理,每季度進行許可權覆核操作,對系統所屬IP、使用者進行許可權梳理工作。 對員工進行安全培訓,增強員工的系統安全觀念,做到細心操作。
4. 確認訪問資料庫的主機是否為已知使用者,使用專門進行維護用的主機與資料庫進行連接,禁止使用公用dblink對資料庫直接操作。 系統維護人員在某一天接到投訴,發現一個表下面的列少了,還好是一個狀態列,先手動insert進去,隨後找原因,發現是因為應用人員用dblink連結測試庫時候,連結到了生產庫中。 由此可見資料庫安全是多麼重要。
5.審計 SYSDBA 的操作行為。
6.對重要業務表的查詢等行為,全部進行審計。
五、備份安全
1.建立備份機制,對於關鍵業務的系統搭建NBU、DP、DSG等備份管理軟體,針對業務情況、系統壓力、帶庫資源等創建合適的備份策略,本單位都是在閒時每週做一次全備,一天一個增備, 且作業系統有crontab或者是自帶磁帶備份主要目錄。
2.對於關鍵業務系統可以使用當前主流容災軟體技術Oracle Goldengate、DG、Quest Shareplex等,在業務高峰期,比如我們系統賬期業務較忙,CPU idle每天1%或者0%。 那麼這個時候就有必要考慮使用同步複製創建備機,將賬期業務遷移至備庫,不影響主庫的業務。
啟明星辰資料庫安全專家點評
作者對於資料庫安全的思考很全面,不僅有版本管理、庫表管理、許可權限制等資料庫自身管理,還有對外部訪問的安全考慮,包括用戶端程式管理、應用系統安全檢查、用戶端IP控制,甚至有DBA及重要操作的審計以及資料備份。 當然,資料庫安全涵蓋的範圍很廣,入侵防禦、訪問身份認證、資料加密等其他安全措施也應考慮,如果一個安全管理人員從資料庫建設伊始就考慮到這些因素,資料洩露或者篡改的風險就會大大降低。
資料庫的風險主要來源於兩個方面,一個是外部攻擊,另一個是內部人員(有許可權人員)的違規操作(故意或者無意),本文中的案例,就是有許可權人員的誤操作。 要消除此類操作帶來的風險,除了要進行嚴格的許可權控制外,對於高許可權使用者的操作審計也非常重要,同時要做好資料備份,一旦發生問題可以有補救措施。
值得注意的是,資料庫安全措施要兼顧性能影響和安全效果兩個方面。 例如,很多單位採購獨立資料庫審計產品而非簡單開啟資料庫自身審計功能,除了符合協力廠商審計要求外,也是為了保護資料庫性能不受自身審計模組開啟的影響。