本文的內容涉及到修改NTFS磁盤權限和設置安全策略,請務必在確認您了解操作可能的后果之后再動手進行任何的修改。文中提及的權限都是在原有權限上附加的權限。
[背景]
默認安裝的情況下,MS SQL服務在安裝時,服務啟動賬戶會被設置成“系統帳戶”(SYSTEM)或者一個指定的戶。如果設置成系統賬戶,由于此帳戶代表系統本身,則在MS SQL有缺陷的情況下,惡意用戶或入侵者可以利用這些缺陷,以系統本身的權限對系統終的資源進行操作。如果設置使用管理員組的賬戶運行MS SQL服務,也會發生同樣的問題。徹底解決問題的辦法就是降低MS SQL運行者的系統權限,保證即便MS SQL被攻破,入侵者也無法威脅系統的安全。本文主要描述在降低MS SQL運行者權限后,需要設置哪些權限以保證MS SQL本身的正常運行。
[修改步驟]
1.創建用戶
創建一個名為mssqlusr的用戶,設置一個隨機密碼,密碼的長度最好不要少于20位。
2.設置用戶的身份
將mssqlusr用戶加入Guests組,并去掉其它任何的組。
3.設置用戶的組策略權力
在控制面板→管理工具→本地安全策略中,找到本地策略→用戶權力指派,在其中確認如下的兩個權限:拒絕本地登錄:其中應當包含Guests組作為服務登錄:其中應當包含mssqlusr用戶
4.修改相關的磁盤權限
C:盤相關權限
C:\
mssqlusr(只有該文件夾)
遍歷文件夾/運行文件
列出文件夾/讀取數據
讀取屬性
讀取擴展屬性
*注:上述權限需要到權限頁中的高級設置中設定
C:\Program Files\Microsoft SQL Server\
mssqlusr
讀取和運行
列出文件夾目錄
讀取
C:\Program Files\Microsoft SQL Server\MSSQL\Data\
(如果此目錄用來放置mssql用戶數據庫或備份)
mssqlusr
修改
讀取和運行
列出文件夾目錄
讀取
寫入
其他磁盤相關權限
(假設用戶的數據庫開設在D:\hosting\mssqldb)
D:\
(如果此分區用來放置mssql用戶數據庫或備份)
mssqlusr(只有該文件夾)
遍歷文件夾/運行文件
列出文件夾/讀取數據
讀取屬性
讀取擴展屬性
D:\hosting\mssqldb\
(如果此目錄用來放置mssql用戶數據庫或備份)
mssqlusr
修改
讀取和運行
列出文件夾目錄
讀取
寫入
備份相關設置
(假設管理員將數據庫備份在E:\backup\mssqldb)
E:\
(如果此分區用來放置mssql用戶數據庫或備份)
mssqlusr(只有該文件夾)
遍歷文件夾/運行文件
列出文件夾/讀取數據
讀取屬性
讀取擴展屬性
E:\backup\mssqldb\
(如果此目錄用來放置mssql用戶數據庫或備份)
mssqlusr
修改
讀取和運行
列出文件夾目錄
讀取
寫入
<完>


