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