由於很多原因
需要作出安全決定的人常常沒有明白數據的真正價值
所以經常無法對數據進行足夠的保護
讓需要你數據的人能夠在需要的時候訪問到它
並確保其有效性
可能是數據庫管理員最重要的職責
但是
保持數據能夠被訪問並不意味著要讓它對所有的人都開放
因此
你需要仔細保護數據的安全
然後只對需要它的人開放
安全措施 普通的維護和數據庫的更改應該讓位於安全措施
這一過程包括如下步驟
● 為缺省的系統管理員(SA)帳號分配一個復雜的密碼
然後創建你唯一命名的帳號來處理管理工作
並給該帳號分配sysadmin角色
要確保新的帳號也具有復雜的密碼
然後你就可以從sysadmin角色裡把SA帳號刪掉
● 為每個用戶設置單獨的密碼
但是更好的方法是使用Windows集成的安全(機制)
並讓Windows來強制執行嚴格的密碼規則
● 要確定哪些用戶需要查看什麼數據
然後分配適當的許可
不要僅僅為圖省事而給予用戶過多的權限
例如
你的數據輸入操作員就的確不需要查看其他人的工資
● 確定哪些用戶需要更改什麼數據
然後再分配適當的許可
帳號管理人員應該可以看到所有的客戶信息
但是你可能希望限制誰才有權更改這些信息
具體的說
掌握特定帳號的帳號管理人員可能是唯一一個被賦予權限更改客戶數據的人
通過本系列的文章
你會了解到更多關於這些措施的內容
但是你應該從一開始就考慮安全的問題
否則
你數據庫的任何用戶都可能竊取或者刪除你最敏感的數據
可能是什麼出錯? 眾所周知
SQL服務器在剛安裝好的的時候並不安全
你必須花一些心思和精力來充分和成功地保證你服務器的安全
甚至在開始安裝服務器之前
你就需要考慮兩個非常重要的問題
● 保護管理員帳號和密碼的安全
● 保護你的系統不受Slammer蠕蟲病毒的侵害
● 保護剛剛安裝好的服務器
利用SA帳號
SQL服務器
的確具有缺省的安全(措施)
在安裝過程中
SQL服務器會自動地創建一個管理員用戶
並為其指定SA這個用戶名和一個空白的密碼
有些管理員會把這個SA的密碼留成空白
或者設置為大家都知道的一個常見密碼
這就使得其整個系統能夠被輕易攻破
如果你犯了這個錯誤
那麼任何人都可以登錄進你的數據庫
並做他們想做的事情
具有管理員許可的任何人都可以做他們想做的任何事——不僅僅是數據庫
還有整台計算機
這肯定不是一件好事
你希望限制每個用戶
只讓他們訪問他們需要的東西——不多也不少
在日常的管理工作中不要使用SA帳號
用一個真正安全的密碼來收藏好這個帳號
然後
為管理工作專門創建另外一個帳號(具體是SQL服務器帳號還是Windows帳號
這要根據你的驗證模式)
你需要避免很容易就會被猜出來的帳號名
或者控制整台服務器的帳號的密碼
因為如果有人使用這個帳號成功地登錄進來
那麼游戲就此結束
一次令人警醒的事件——Slammer蠕蟲 年
月
一個感染性極強的惡意代碼
Slammer蠕蟲將攻擊目標瞄准了SQL服務器的安裝過程
通過利用SQL服務器代碼裡的漏洞
它能夠在安裝SQL服務器的時候
綁架
計算機
並將自己的多個副本安插進其他被攻破的計算機裡
利用某些帳號
這個蠕蟲在被釋放出來的
分鐘之內就滲透進了Internet
微軟花了大量的精力來發布補丁
但是Slammer的影響現在還時有發生
有些媒體甚至還宣稱
它破壞了SQL服務器工作組的工作
結果導致SQL服務器下一版本的beta版發布被推遲
為什麼在這一事件爆發數月之後你還需要關注這個問題?因為現在在網上每天還有受到感染的機器在向外發送Slammer的副本
如果把沒有打補丁的SQL服務器連接到Internet上
你就可能成為下一個受害者
這次事件告訴我們
在插上連接到Internet的電纜之前
你需要保護好自己服務器的安全
並安裝最新的服務包和補丁
服務包的重要性 服務包可以免費下載
所以你不會因為買不起而不去安裝
Slammer蠕蟲不會破壞數據
但是它會導致你服務的嚴重崩潰
其後果和數據被破壞一樣嚴重
保護措施非常簡單
下載服務包
或者服務包
a
這個蠕蟲如何工作的技術細節在這裡並不重要
重要的是
Slammer蠕蟲所攻擊的漏洞
已經在
個月之前由微軟發布補丁進行了修補
但是還造成這麼大的損失
受到這個蠕蟲攻擊的商業機構兩次受害
一次是由沒有保護好系統的管理員造成的
另一次是由蠕蟲造成的
你也應該要記住
沒有什麼能夠保證SQL服務器服務包
能夠修補所有的漏洞
你應該定期訪問微軟的安全公告牌頁面
以確保你能夠得知未來服務包和補丁的發布
選擇驗證模式 在安裝SQL服務器過程中你要首先作出的一個決定是選擇使用哪種安全模式
安全模式有兩種
● Windows驗證模式(也叫做集成模式)
● 混合模式
在Windows驗證模式下
用戶通過已有的Windows用戶帳號連接到SQL服務器上
當用戶使用合法的用戶名和密碼連接到服務器的時候
SQL服務器會驗證用戶的Windows登錄信息
這樣
用戶只需要一次就能夠同時登錄進Windows和SQL服務器
帳號信息由Windows嚴格保存
混合模式是Windows驗證和SQL服務器驗證的結合
在混合驗證模式下
有的用戶可以只需要一次注冊
就可以繼續使用Windows的帳號來訪問SQL服務器
而其他的人可以使用SQL服務器的用戶帳號
這一帳號是同Windows帳號完全分離的
每個SQL服務器的帳號都會保存自己的用戶名和密碼
即使這兩個登錄的值完全相同
用戶也必須登錄兩次——一次用於進入Windows
另一次用於進入SQL服務器
Windows驗證模式要優於混合模式
其原因如下
● 它提供了比SQL服務器驗證更多的特性
● 大多數管理員都認為Windows驗證是兩種模式中更容易實現和使用的
● 在Windows驗證模式下
沒有必要在連接字符串裡保存密碼——又少了一樣要保護的東西
● Windows驗證意味著你只需要在一個地方管理密碼
而不是兩個地方
不幸的是
不是所有的人都可以使用Windows驗證
SQL服務器
(或者更早的版本)要求使用混合模式
Windows驗證只能在SQL服務器
上使用
在某些情況下(例如
當你正在使用域以外的Web服務器
從域以內的SQL服務器上獲取數據的時候)
Windows驗證無法工作
因為信任書無法通過域的邊界
在這些情況下
你必須使用混合模式和SQL服務器登錄
其他關於安裝的提示 在安裝SQL服務器的時候
有一些東西需要你考慮
● 要將TCP/IP用作SQL服務器的網絡庫
這是微軟所推薦的庫
所順理成章地成為經過測試的最佳庫
如果服務器會被放在公眾的Internet上
那麼就要使用一個非標准的端口
這就可以讓壞小子們更難找到它
● 要使用一個低權限的帳號來運行SQL服務器
而不是用管理員帳號
這會在安全系統被攻破的時候限制其造成的損失
● 不要允許未受安全保護的來賓帳號訪問任何包含有保護數據的數據庫
● 將服務器從物理上鎖在服務器房間或者櫃子裡
以保證其安全
要記住
大多數入侵都來自內部
結論 讓安全從一開始就成為你工作重點的頭一個
無論是保護你的數據不因為能力不足而遭受損失
還是要防止有意破壞而受到的損失
你都要花時間學習安全模式
然後小心地應用它
只需要一次安全惡夢
你就會成為安全的相信者
所以正視安全
睡個好覺
From:http://tw.wingwit.com/Article/program/SQLServer/201311/22162.html