發表于:2010-12-07 00:00:00來源:人氣:2911
設置安全性過程
通用的(de)軟件維護和(hé)數據庫更新都會對系統安全起着重要作用,通常包括以下步驟:
1、分配一(yī)個可(kě)靠的(de)密碼給缺省的(de)系統管理(lǐ)(SA)帳号。然後,建立自(zì)己唯一(yī)命名的(de)帳号,并将這一(yī)帳号放入sysadmin。一(yī)定要确認新帳号也有一(yī)個可(kě)靠的(de)密碼。
2、将獨立的(de)密碼分配給每一(yī)個用戶。更好的(de),使用Windows集成安全性,并讓Windows遵循穩定密碼規則。
3、決定哪些用戶需要查看數據,然後分配合适的(de)許可(kě)。請不要随便賦予用戶各種權限。例如(rú)不要把每一(yī)個人的(de)工資随便讓其他人訪問。
4、決定哪些用戶需要更新數據,然後分配合适的(de)許可(kě)。帳号管理(lǐ)人員應該可(kě)以查看所有用戶的(de)信息,但程序員一(yī)定要限制更新這些信息的(de)權限。特别的(de),隻有負責特定帳号的(de)管理(lǐ)者是唯一(yī)可(kě)以更改用戶數據的(de)人。
通過這些系列信息你可(kě)以學(xué)會很多知識,但你應該從開始就具備這些觀點。否則,數據庫的(de)任何用戶就可(kě)以偷竊或删除你的(de)重要數據。
什麽東西最容易發生錯誤?
對于記錄,應該知道(dào)SQL Server并非絕對安全的(de)。你應該提出一(yī)些想法并努力有效地(dì)保護你的(de)服務器。在安裝服務器之前有兩點你必須完成的(de):
1、設置管理(lǐ)人員的(de)帳号和(hé)密碼。
2、保護系統防止受到Slammer worm的(de)感染。
使一(yī)些特殊的(de)東西安全化
SQL Server 2000通過SA帳号而具有缺省的(de)安全設置。在安裝過程中,SQL Server自(zì)動建立一(yī)個管理(lǐ)的(de)用戶,并分配一(yī)個空白密碼給SA用戶名稱。一(yī)些管理(lǐ)人員喜歡将SA密碼設置為(wèi)空白或者一(yī)個通用的(de)密碼以便每一(yī)個人都能知道(dào)。如(rú)果你犯這樣的(de)錯誤,進入你的(de)數據庫的(de)任何人都可(kě)以為(wèi)所欲為(wèi)。具備管理(lǐ)者允許的(de)任何人也可(kě)以做(zuò)任何想做(zuò)的(de)事——不僅僅是數據庫,而是整個計算機。所以,必須限制用戶根據他們的(de)需要進行訪問數據庫,不要給他們權利太少,也不能太多。
暫且把每一(yī)天管理(lǐ)的(de)SA帳号放在一(yī)邊,讓我們看看帶有安全密碼的(de)帳号。建立另一(yī)帳号以便管理(lǐ)(或者是一(yī)個SQL Server帳号或者是一(yī)個Windows帳号,取決于你的(de)認證模式)。你所要避免的(de)是太容易地(dì)猜到帳号名稱或者帳号密碼,因為(wèi)任何人得到這些帳号。
一(yī)個引起警戒的(de)壞事—Slammer worm(Slammer蠕蟲)
2003年(nián)1月份出現了一(yī)些非常緻命的(de)惡意代碼,即為(wèi)Slammer worm。這一(yī)代碼專門針對于SQL Server的(de)安裝進行攻擊。通過利用SQL Servera代碼中的(de)缺欠,蠕蟲能夠在SQL Server安裝的(de)時候複制本身程序而損壞整個機器和(hé)其他機器。蠕蟲生成時以15秒可(kě)以充滿網絡。微軟已經花了很大力量來阻止這一(yī)蠕蟲,但是蠕蟲還是無法完全消除。有些人開始抱怨SQL Server的(de)測試版本的(de)原因,因為(wèi)是它在安裝時導緻了系統的(de)損壞。
很多月份已經過去(qù)了,有必要還要對蠕蟲那麽警惕嗎?回答是肯定的(de)。因為(wèi)每一(yī)天還有很多Slammer的(de)複制而感染機器。如(rú)果一(yī)個沒有任何補丁的(de)SQL Server連接到網絡,你将會變成這一(yī)行為(wèi)的(de)犧牲品。從道(dào)德上而言,在将SQL Server與網絡線連接之前,必須保護你的(de)服務器,并運行所有的(de)新服務補丁。
服務補丁的(de)重要性
服務補丁在下載時是免費的(de)。Slammer沒有損壞你的(de)數據,但它可(kě)以導緻服務器的(de)很多破壞,其危害是明顯的(de)。保護數據最簡單的(de)方法是下載Service Pack 3或者Service Pack 3a。
蠕蟲如(rú)何工作這一(yī)方面的(de)知識并不是重要,重要的(de)是蠕蟲在微軟的(de)補丁發布以後還可(kě)以生存6個月。被蠕蟲感染的(de)商業系統通常有兩個原因:一(yī)是管理(lǐ)人員沒有很有效的(de)保護好系統,二是蠕蟲本身太厲害。
你應該注意到,SQL Server SP3也是無法保證它能夠保持全部的(de)數據。你應該實時監控Microsoft‘s Security Bulletin(微軟安全公告)以保證處于被服務補丁通知的(de)狀态。
選擇一(yī)個認證模式
在SQL Server安裝過程中有一(yī)個必須決定的(de)是選擇安全認證模式。這裏有兩種模式:
1、Windows認證模式(也叫集成模式)
2、混合模式
Windows認證模式用戶通過使用一(yī)個現成的(de)Windows用戶帳号連接到SQL服務器。當用戶使用一(yī)個合法用戶名和(hé)密碼連接到服務器時,SQL Server就确認用戶的(de)注冊信息。結果是用戶隻是在Windows和(hé)SQL Server中注冊,帳号信息被Windows嚴格的(de)存儲。
混合模式是Windows認證和(hé)SQL Server認證的(de)結合。在混合模式中,一(yī)些用戶可(kě)以繼續使用Windows帳号來訪問SQL Server,但其他隻能使用與Windows帳号完全不關聯的(de)SQL Server用戶帳号。每一(yī)個SQL Server帳号都存放其用戶名和(hé)密碼。如(rú)果這些注冊值相同,用戶必須輸入兩次——一(yī)次是Windows輸入,另一(yī)次是SQL Server輸入。
Windows認證比混合模式更優越,原因在以下:
◆它比SQL Server認證提供更多的(de)特性。
◆很多管理(lǐ)人員都認為(wèi)Windows認證比較容易執行和(hé)使用。
◆使用Windows認證,不需要将密碼存放在連接字符串中。
◆Windows認證意味着你隻需要将密碼存放在一(yī)個地(dì)方。
不幸的(de)是,Windows認證并不是每一(yī)個人都能夠使用的(de)。混合模式必須在SQL Server 7.0中運行,而Windows認證隻能在SQL Server2000中使用。還有其他的(de)一(yī)些環境,Windows認證無法運行,因為(wèi)無法獲得垮平台的(de)相互信任。在這種情況下,你隻能使用混合模式和(hé)SQL Server注冊。
其他安裝技巧
在安裝SQL Server時,還在其他一(yī)些技巧值得注意。
使用TCP/IP作為(wèi)SQL Server的(de)網絡庫。這是微軟推薦使用的(de)庫,是經受考驗的(de)。如(rú)果服務器将與網絡連接,使用非标準端口會被一(yī)些别有用心的(de)人破壞。
使用一(yī)個低(dī)級别的(de)帳号來運行SQL Server,而不是一(yī)個管理(lǐ)帳号。這對系統崩潰的(de)時候起着保護作用。
不要允許未獲得安全許可(kě)的(de)客人訪問任何包括安全數據的(de)數據庫。
将數據庫保護于一(yī)個“被鎖的(de)房間”。記住,很多騷擾都是來自(zì)于內(nèi)部的(de)人。