圖 1 SQL Server 外圍應(yīng)用配置器可幫助您找出可以禁用哪些組件和服務(wù)。
您還應(yīng)該慎重考慮為 SQL Server 安全性選擇的身份驗(yàn)證方法。盡管您可以選擇混合模式或 Windows 身份驗(yàn)證模式,但是您應(yīng)該盡可能將 SQL Server 配置為使用 Windows 身份驗(yàn)證。Windows 模式比混合模式更安全,因?yàn)樗谏矸蒡?yàn)證過程中使用 Kerberos 安全協(xié)議。而且,由于 Windows 身份驗(yàn)證使用域用戶帳戶,因此您在 Active Directory 中建立的任何密碼策略仍然生效。
服務(wù)帳戶
管理員在部署 SharePoint 2007 時犯的最大的安全錯誤之一是他們沒有正確配置服務(wù)帳戶。如果您曾經(jīng)安裝過 SharePoint 2007,您肯定知道,在部署和配置過程中會多次要求您提供服務(wù)帳戶。
管理員經(jīng)常會創(chuàng)建一個單獨(dú)的服務(wù)帳戶,然后在整個 SharePoint 安裝過程中使用該帳戶。盡管所獲得的 SharePoint 服務(wù)器能夠正常使用,但是此方法從安全角度來看是有風(fēng)險的。
問題在于:只要您向 SharePoint 提供服務(wù)帳戶,都會向該帳戶授予執(zhí)行當(dāng)前任務(wù)的權(quán)限。SharePoint 僅僅向帳戶提供執(zhí)行其工作所需的權(quán)限,而不會提供更多權(quán)限。但是如果您在整個部署過程中多次使用同一個服務(wù)帳戶,最終該帳戶就會擁有過多的權(quán)限,因?yàn)樵谀看问褂脮r,它都會獲得更多權(quán)限。以后就可能會有人利用這些過多的權(quán)限在 SharePoint 服務(wù)器上運(yùn)行代碼,進(jìn)而控制服務(wù)器。
對于如何規(guī)劃 SharePoint 所使用的帳戶結(jié)構(gòu),存在大量相互矛盾的信息,甚至很難確認(rèn)哪些是推薦的最佳做法。毫無疑問,如果您執(zhí)行基本的 SharePoint 部署,建議最少使用五個單獨(dú)的帳戶。
此外,還建議您單獨(dú)創(chuàng)建一個特殊的用戶帳戶,專門用于安裝 SharePoint 和 SQL Server。管理員的常見做法是在部署 SharePoint 時,使用自己的個人帳戶或域管理員帳戶進(jìn)行登錄。從安全角度來看,使用現(xiàn)有帳戶可能是一個錯誤,因?yàn)樵搸魧⒈皇谟韪鄼?quán)限,以便完成安裝過程。
如果您決定使用專用的安裝帳戶,則必須使該帳戶成為每臺 SharePoint 服務(wù)器上的本地管理員組的成員。您還必須使該帳戶成為 SQL Server 登錄組的成員,從而使該帳戶能夠登錄您的 SQL Server 實(shí)例。
最后,您需要向該帳戶授予 SQL Server 上的“SQL Server 數(shù)據(jù)庫創(chuàng)建者”和“SQL Server 安全管理員”角色。這些角色使得該帳戶有權(quán)創(chuàng)建和修改數(shù)據(jù)庫以及管理 SQL Server 的安全性。這些特殊權(quán)限是建議使用專用的用戶帳戶的根源。
除了創(chuàng)建專用于 SharePoint 安裝過程的帳戶以外,您還必須創(chuàng)建其他一些服務(wù)帳戶:
數(shù)據(jù)庫訪問帳戶。這是 SharePoint 用來與 SQL Server 數(shù)據(jù)庫通信的帳戶。
SharePoint 搜索服務(wù)帳戶。SharePoint 搜索服務(wù)將使用此帳戶把內(nèi)容索引文件寫入索引服務(wù)器,以及把索引信息復(fù)制到服務(wù)器場中存在的任何查詢服務(wù)器。
內(nèi)容訪問帳戶。此帳戶用于在特定的共享服務(wù)提供程序內(nèi)遍訪內(nèi)容。在有些情況下,您可能需要創(chuàng)建多個內(nèi)容訪問帳戶,以便分別遍訪多個內(nèi)容源。
應(yīng)用程序池服務(wù)帳戶。此帳戶由 IIS 內(nèi)的工作進(jìn)程使用。池內(nèi)的 Web 應(yīng)用程序必須能夠訪問 SharePoint 內(nèi)容數(shù)據(jù)庫,并且“應(yīng)用程序池標(biāo)識”帳戶也利用了此進(jìn)程。
SQL Server 服務(wù)帳戶。SQL Server 也需要一個服務(wù)帳戶,您應(yīng)該為此目的使用一個專用的帳戶。
更加高級的 SharePoint 部署可能需要使用更多服務(wù)帳戶。本文末尾的“相關(guān)內(nèi)容”部分中有一個鏈接指向一篇 TechNet 文章,該文章提供了您可能需要的其他服務(wù)帳戶的相關(guān)詳細(xì)信息。
命名約定
到現(xiàn)在為止,您可以看到,在開始部署 SharePoint 之前就需要創(chuàng)建大量帳戶。確保順利完成部署的一項(xiàng)技巧是在您創(chuàng)建服務(wù)帳戶之前先確定它們的命名約定。
您可以使用不同的方法來建立服務(wù)帳戶命名約定,但是應(yīng)該遵循一些基本的規(guī)則。建議盡可能使用描述性的名稱,并花時間記錄所選的名稱及其目標(biāo)用途。例如,您可以將 SharePoint 搜索帳戶命名為類似 SPT_Search 的形式。
不拼寫出 SharePoint,是由于存在一些舊的限制。Windows 允許用戶名的總長度超過 100 個字符,但是每個用戶名的長度不能超過 16 個字符。長用戶名偶爾會由于舊的硬件或軟件而導(dǎo)致意外的問題。盡管這種情況很少見,但確實(shí)存在,因此最好堅持使用短用戶名。
請注意,盡管我建議使用描述性的服務(wù)帳戶名稱,而且這種名稱確實(shí)會使管理員的工作更加輕松,但是這么做并非總是能提供最佳安全性。服務(wù)帳戶是黑客中意的目標(biāo),因?yàn)樗鼈儽绕胀ㄓ脩魩魮碛懈叩臋?quán)限。它們經(jīng)常使用靜態(tài)的、一成不變的密碼。對于這種情況,您可能需要考慮隱藏您的服務(wù)帳戶。如果您這么做,務(wù)必記錄服務(wù)帳戶的名稱和功能。
加密流量
在規(guī)劃 SharePoint 部署時,管理員花費(fèi)大量時間來設(shè)計服務(wù)器的體系結(jié)構(gòu)。有時候會忽略的一個要素是公鑰基礎(chǔ)結(jié)構(gòu) (PKI)。您需要在部署 SharePoint 之前準(zhǔn)備好 PKI,這樣才能正確加密 SharePoint 流量。SharePoint 服務(wù)器與最終用戶之間的 HTTP 流量必須進(jìn)行 SSL 加密(使用 HTTPS)。
同樣,SharePoint 服務(wù)器之間的流量也應(yīng)該使用 IPSec 進(jìn)行加密。這兩種加密均依賴于證書和基礎(chǔ) PKI 結(jié)構(gòu)。
這些最佳安全做法并不全面。但是,要盡可能保護(hù) SharePoint 安裝的安全,它們是一個好的開頭。