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