SQL Server 2008的安全配置
要安全地安裝 SQL Server,必須有一個安全的環境。對于運行 SQL Server 2008 的服務器,其外部安全要求沒有太多改變。需要保護服務器的物理安全,并要定期備份數據,如果聯網,還須將其放到一個或多個防火墻后面,避免在運行其他服務器應用程序的計算機上安裝 SQL Server,且要盡可能減少必要的網絡協議數量。要在 Microsoft Windows Server® 2003 或 Microsoft Windows Server® 2008 計算機上安裝 SQL Server,以使它能充分利用操作系統級的安全保護措施。此外,最安全的方案就是安裝到一個或多個NTFS分區上。
有了安全的環境,接下來最關鍵的就是安全地安裝 SQL Server 2008。安裝程序執行所有的常規安裝任務,其自帶的 System Configuration Checker 將通知用戶可能導致問題的任何不足之處。默認情況下,安裝 SQL Server 2008 并不能啟用所有特性。而是只安裝核心組件以及常用特性。生產環境中可能用不到的其他特性默認是關閉的。可以使用該產品支持的工具啟用所需特性。
這些都是 Trustworthy Computing 技術中 secure by default 特性的一部分。這表示在安裝時,SQL Server 2008 可利用默認的安全設置集實現開箱即用的安全性。基本數據庫服務器不需要的特性并未被安裝,目的是為了減少外圍應用。由于默認情形下并未在所有系統中啟用所有特性,因此在安裝系統鏡像時引入了異質性。這一點限制了啟用易受潛在攻擊的特性的系統數量,因此有助于防御大規模攻擊或蠕蟲病毒。
Windows Update
在企業中部署SQL Server 之后,就能發現新的威脅和漏洞。Windows Update 旨在確保及時下載并應用能夠顯著減少特定安全問題的補丁。可以利用 Windows Update 自動應用 SQL Server 2008 補丁,并減少由于已知的軟件漏洞所導致的威脅。在大多數企業環境中,應使用 Windows Server Update Service(WSUS)管理補丁在組織內部的分發和更新。
外圍應用配置
SQL Server 2008 具有大量特性,其中有許多在安裝時處于禁用狀態。例如,CLR 集成、數據庫鏡像、調試、Service Broker 以及郵件功能雖被安裝,但未運行且不可用,除非顯式地啟用或對其進行配置。該設計與 SQL Server “默認保證安全”思路的“減少外圍應用”原則保持一致,可以減小攻擊表面。如果特性不可用或未被啟用,攻擊者就不能利用它。
這樣做的代價就是,要花些時間搜尋啟用特性的所有 Transact-SQL 語句。即使發現sp_configure system 存儲過程可以滿足很多需要,仍須編寫并不直觀的如下代碼:
sp_configure 'show advanced options', 1 |
由于配置選項過多,編寫此類代碼很耗時間,尤其是在組織中部署了多個SQL Server 實例時更是如此。SQL Server 2008 帶有基于策略的管理技術,名為Declarative Management Framework (聲明管理框架,DMF)。DMF 提供了大量的配置 facet,其中的每一個都定義了一組相關的配置設置或屬性。可以利用這些 facet 創建一些為配置選項指定所需設置的“條件”,并將這些條件作為“策略”應用給企業中的 SQL Server 實例。
SQL Server 2008 自帶的一個 facet 就是 Surface Area,可以利用該 facet 定義用以控制各種SQL Server 2008 特性狀態的策略。通過創建為服務器定義所需外圍應用設置的策略,可以方便地在組織中所有的 SQL Server 上配置最小的外圍應用,并減小惡意攻擊的可能性。
【編輯推薦】