簡介
SQL Server 2000 是Microsoft公司推出的SQL Server 資料庫管理系統的一個版本。該版本繼承了SQL Server 7.0 版本的優點同時又寒腿比它增加了許多更先進的功能,具有使用方便,可伸縮性好與相關軟體集成程度高等優點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2000 的大型多處理器的伺服器等多種平台使用。
特性
Internet 集成
SQL Server 2000 資料庫引擎提供完整的XML 支持。它還具有構成最大的Web 站點的數據存儲組件所需的可伸縮性、可用性和安全功能。SQL Server 2000 程式設計模型與 Windows DNA 構架集成,用以開發 Web 應用程式,並且SQL Server 2000 支持 English Query 和 Microsoft 搜尋服務等功能,在Web 應用程式中包含了用戶友好的查詢和強大的搜尋功能。
可伸縮性和可用性
同一個資料庫引擎可以在不同的平台上使用,從厚立付運行 Microsoft Windows® 98 的攜帶型電腦,到運行 Microsoft Windows 2000 數據中心版的大型多處理器伺服器。SQL Server 2000 企業版支持聯合伺服器、索引視圖和大型記憶體支持等功蘭殃甩能,使其得以升級到最大 Web 站點所需的性能級別。
企業級資料庫功能
SQL Server 2000 關係資料庫引擎支持當今苛刻的數據處理環境所需的功能。資料庫引擎充分保護數據完整性,同時將管理上千個並發修改資料庫的用戶的開銷減到最小。SQL Server 2000 分散式查詢使您得以引用來自不同數據源的數據,就好象這些數據是 SQL Server 2000 資料庫的一部分,同時分散式事務支持充分保護任何分散式數據更新的完整性。複製同樣使您得以維護多個數據複本,同時確保單獨的數據複本保持同步。可將一組數據微愉臘漏複製到多個移動的脫接用戶,使這些用戶自主地工作,然後將他們所做的修改合併回發布伺服器。
易於安裝部署和使用
SQL Server 2000 中包括一系列管理和開發工具,這些工具可改進在多個站點上安裝、部署、管理和使用 SQL Server 的過程。SQL Server 2000 還支持基於標準的、與 Windows DNA 集成的程式設計模型,使 SQL Server 資料庫和數據倉庫的使用成為生成強大的可伸縮系統的無縫部分。這些功能使您得以快速交付 SQL Server 應用程式,使客戶只需最少的安裝和管理開銷即可實現這些應捉宙炒用程式。
數據倉庫。 SQL Server 2000 中包括析取和分析匯總數據以進行在線上分析處理 (OLAP) 的工具。SQL Server 中還包括一些工具,可用來直觀地設計資料庫並通過 English Query 來分析數據。
優點
1、高性能設計,可充分利用WindowsNT的優勢。
2、系統管理先進,支持Windows圖形化管理工具,支持本地和遠程的系統管理和配置。
3、強壯的事務處理功能,採用各種方法保證數據的完整性。
4、支持對稱多處理器結構、存儲過程、ODBC,並具有自主的SQL語言。 SQLServer以其內置的數據複製功能、強大的管理工具、與Internet的緊密集成和開放的系統結構為廣大的用戶、開發人員和系統集成商提供了一個出眾的資料庫平台。
版本
對於新接觸SQL資料庫的人來說,類似這幾個問題的有關於SQL版本的問題可雄照蘭迎以說不少,但又懶得去仔細研究。問題雖然簡單,可是影響卻不小。
版本區別
SQL Server 2000有四個版本:企業版/標準版/個人版/開發版
1、企業版和標準版需要安裝在伺服器作業系統上,如WindowsNT Server/Windows 2000 Server/Windows 2003 Server等
SQL Server 2000 企業版:作為生產資料庫伺服器使用。支持 SQLServer 2000 中的所有可用功能,並可根據支持最大的 Web 站點和企業在線上事辣陵付務處理 (OLTP) 及數據倉庫系統所需的性能水平進行伸縮。
SQL Server 2000 標準版:作為小工作組或部門的資料庫伺服器使用。
2、個人版需要安裝在個人作業系統上,如Windows98/Windows2000 Professional/Windows XP Home/Windows XP Professional等
SQL Server 2000 個人版:供移動的用戶使用,這些用戶有時從網路上斷開,但所運行的應用程式需要 SQLServer 數據存儲。在客戶端計算機上運行需要本地 SQLServer 數據存儲的獨立應用程式時也使用個人版。
3、開發版可以安裝在任何微軟的作業系統上。
SQL Server 2000 開發版:供程式設計師用來開發將 SQLServer 2000 用作數據存儲的應用程式。雖然開發版支持企業版的所有功能,使開發人員能夠編寫和測試可使用這些功能的應用程式,但是只能將開發版作為開發和測試系統使用,不能作為生產伺服器使用。
4、SQL Server 2000 Windows CE 版
使用Microsoft? SQL Server 2000? Windows? CE 版 (SQL ServerCE) 在 Windows CE 設備上進行數據存儲。能用任何版本的 SQL Server 2000 複製數據,以使Windows CE 數據與主資料庫保持同步。
5、SQL Server 2000 企業評估版
可從 Web上免費下載的功能完整的版本。僅用於評估 SQLServer 功能;下載 120天后該版本將停止運行。
除了這些版本的 SQLServer 2000 之外,SQL Server 2000 Desktop Engine 組件允許應用程式開發人員用他們的應用程式分發 SQLServer 2000 關係資料庫引擎的複本。因為 SQL Server 2000 Desktop Engine 中的資料庫引擎的功能與 SQLServer 各版本中的資料庫引擎相似,所以Desktop Engine 資料庫的大小不能超過 2 GB。
版本對比
SQL Server包括企業版,標準版,個人版,開發版,桌面引擎(MSDE),評估版,CE版
1、評估版用於評估,CE版用於WindowsCE, 就不多說了
2、從功能上,企業版和開發版是一對,標準版和個人版是一對。企業版和開發版主要用於大用戶,可以支持更多的CPU,記憶體,可以支持集群(Cluster),日誌傳輸(logshipping),並行DBCC, 並行創建索引,索引視圖等高級功能。
3、從安裝上看,企業版和標準版是一對,個人版,開發版和桌面引擎是一組,企業版和標準版只能安裝在Windows的Server版(NT,2000, 2003)上, 個人版,開發版和桌面引擎可以安裝在更多的系統(包括NTWorkstation, 2000 professional, XP 等。98隻能安裝個人版或桌面引擎,但桌面引擎得資料庫不能超過2G)。
4、投入運行時使用企業版,標準版或桌面引擎,(個人版,開發版分別用於對應標準版,企業版的開發)。
標準版和企業版差別
1、是否支持MSCS群集
2、是否支持全文索引
3、是否支持分散式分區視圖
4、是否支持日誌傳送
5、是否支持索引視圖的CPU利用
企業版
提供最高的可用性;個人版和MSDE中硬性填入某些代碼使得並發用戶在五個以上之後性能大打折扣。
標準版:
資料庫引擎功能缺少故障轉移群集(最多四個節點)、支持SQLServer企業管理器中的故障轉移、日誌傳送、並行DBCC、並行CREATEINDEX、增強的預讀和掃描、索引視圖、聯合資料庫伺服器、支持系統區域網路 (SAN)、支持語言設定的圖形實用工具,對於Analysis Services缺少用戶定義OLAP分區、分區嚮導、連結OLAP多維數據集、ROLAP維度支持、支持HTTPInternet、計算單元、回寫到維度、支持超大型維度、實時 OLAP、分散式分區多維數據集,win2000下最大隻支持4個CPU的SMP,NT下最大隻支持8個
CPU(企業版) ,買10個授權是不可以上20個用戶的(一般是限制並發用戶數,連線數決定於OS)
企業版:
作為生產資料庫伺服器使用。支持SQL SERVER 2000中的所有可用功能,並根據支持最大的Web站點和企業在線上事務處理(OLTP及數據倉庫系統所需要的性能水平進行伸縮。
標準版:
作為工作組或者部門資料庫伺服器使用。
硬體和作業系統要求
下表說明安裝 Microsoft SQL Server 2000 或 SQL Server 客戶端管理工具和庫的硬體要求。
硬體 | 最低要求 |
---|
| |
| 至少 64 MB,建議 128 MB 或更多。根據筆者的經驗,記憶體容量可以和數據容量保持1:1的比例,這樣可以更好的發揮其效能。 |
| 需要約500MB的程式空間,以及預留500M的數據空間 |
| 需要設定成800x600模式,才能使用其圖形分析工具 |
下表說明為使用 Microsoft SQL Server 2000 各種版本或組件而必須安裝的作業系統。
SQL Server 版本或組件 | 作業系統要求 |
---|
| Microsoft Windows NT Server 4.0、Microsoft Windows NT Server 4.0 企業版、Windows 2000 Server、Windows 2000 Advanced Server 和 Windows 2000 Data Center Server。(所有版本均需要安裝IE5.0以上版本瀏覽器) |
| Microsoft Windows NT Server 4.0、Windows 2000 Server、Microsoft Windows NT Server 企業版、Windows 2000 Advanced Server 和 Windows 2000 Data Center Server。 |
| Microsoft Windows Me、Windows 98、Windows NT Workstation 4.0、Windows 2000 Professional、Microsoft Windows NT Server 4.0、Windows 2000 Server 和所有更高級的 Windows 作業系統。 |
註:SQL Server 2000 的某些功能要求在Microsoft Windows 2000 Server以上的版本才能運行。因此大家安裝Windows Server 2000(建議為Advanced版本),可以學習和使用到SQL Server 2000的更多功能,以及享受更好的性能。
保護SQL Server的十個措施
為提高 SQL Server安裝的安全性,可以實施一下十個措施
1.安裝最新的服務包。
為了提高伺服器安全性,最有效的一個方法就是升級到 SQL Server 2000 Service Pack 3a (SP3a)。另外,您還應該安裝所有已發布的安全更新。
2.使用 Microsoft 基線安全性分析器(MBSA)來評估伺服器的安全性。
MBSA 是一個掃描多種 Microsoft 產品的不安全配置的工具,包括 SQL Server 和 Microsoft SQL Server 2000 Desktop Engine (MSDE 2000)。它可以在本地運行,也可以通過網路運行。該工具針對下面問題對 SQL Server 安裝進行檢測:
1) 過多的sysadmin固定伺服器角色成員。
2) 授予sysadmin以外的其他角色創建 CmdExec 作業的權利。
3) 空的或簡單的密碼。
4) 脆弱的身份驗證模式。
5) 授予管理員組過多的權利。
6) SQL Server數據目錄中不正確的訪問控制表(ACL)。
7) 安裝檔案中使用純文本的sa密碼。
8) 授予guest帳戶過多的權利。
9) 在同時是域控制器的系統中運行SQL Server。
10) 所有人(Everyone)組的不正確配置,提供對特定註冊表鍵的訪問。
11) SQL Server 服務帳戶的不正確配置。
12) 沒有安裝必要的服務包和安全更新。
3.使用 Windows 身份驗證模式。
在任何可能的時候,都應該對指向 SQL Server 的連線要求 Windows 身份驗證模式。它通過限制對Microsoft Windows®用戶和域用戶帳戶的連線,保護 SQL Server 免受大部分 Internet 的工具的侵害,而且,伺服器也將從 Windows 安全增強機制中獲益,例如更強的
身份驗證協定以及強制的密碼複雜性和過期時間。另外,憑證委派(在多台伺服器間
橋接憑證的能力)也只能在 Windows 身份驗證模式中使用。在客戶端,Windows 身份驗證模式不再需要存儲密碼。存儲密碼是使用標準 SQL Server 登錄的應用程式的主要漏洞之一。要在 SQL Server 的 Enterprise Manager 安裝 Windows 身份驗證模式,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點擊伺服器,然後點擊屬性。
3) 在安全性選項卡的身份驗證中,點擊僅限 Windows。
4.隔離您的伺服器,並定期備份。
物理和邏輯上的隔離組成 了SQL Server 安全性的基礎。駐留資料庫的機器應該處於一個從物理形式上受到保護的地方,最好是一個上鎖的機房,配備有洪水檢測以及火災檢測/消防系統。資料庫應該安裝在企業內部網的安全區域中,不要直接連線到 Internet。定期備份所有數據,並將副本保存在安全的站點外地點。
5.分配一個強健的sa密碼。
sa帳戶應該總擁有一個強健的密碼,即使在配置為要求 Windows 身份驗證的伺服器上也該如此。這將保證在以後伺服器被重新配置為混合模式身份驗證時,不會出現空白或脆弱的sa。要分配sa密碼,請按下列步驟操作:
1) 展開伺服器組,然後展開伺服器。
2) 展開安全性,然後點擊登錄。
3) 在細節窗格中,右鍵點擊SA,然後點擊屬性。
4) 在密碼方框中,輸入新的密碼。
6.限制 SQL Server服務的許可權。
SQL Server 2000 和 SQL Server Agent 是作為 Windows 服務運行的。每個服務必須與一個 Windows 帳戶相關聯,並從這個帳戶中衍生出安全性上下文。SQL Server允許sa 登錄的用戶(有時也包括其他用戶)來訪問作業系統特性。這些作業系統調用是由擁有伺服器進程的帳戶的安全性上下文來創建的。如果伺服器被攻破了,那么這些作業系統調用可能被利用來向其他資源進行攻擊,只要所擁有的過程(SQL Server服務帳戶)可以對其進行訪問。因此,為 SQL Server 服務僅授予必要的許可權是十分重要的。 推薦採用下列設定:
1) SQL Server Engine/MSSQLServer
如果擁有指定實例,那么它們應該被命名為MSSQL$InstanceName。作為具有一般用戶許可權的Windows 域用戶帳戶運行。不要作為本地系統、本地管理員或域管理員帳戶來運行。
2) SQL Server Agent Service/SQLServerAgent
如果您的環境中不需要,請禁用該服務;否則請作為具有一般用戶許可權的Windows域用戶帳戶運行。不要作為本地系統、本地管理員或域管理員帳戶來運行。
重點: 如果下列條件之一成立,那么 SQL Server Agent 將需要本地 Windows管理員許可權:
SQL Server Agent 使用標準的 SQL Server 身份驗證連線到SQL Server(不推薦)。
SQL Server Agent 使用多伺服器管理主伺服器(MSX)帳戶,而該帳戶使用標準 SQL Server 身份驗證進行連線。
SQL Server Agent 運行非sysadmin固定伺服器角色成員所擁有的 Microsoft ActiveX®腳本或 CmdExec 作業。
如果您需要更改與 SQL Serve r服務相關聯的帳戶,請使用 SQL Server Enterprise Manager。Enterprise Manager 將為 SQL Server 所使用的檔案和註冊表鍵設定合適的許可權。不要使用 Microsoft 管理控制台的"服務"(在控制臺中)來更改這些帳戶,因為這樣需要手動地調製大量的註冊表鍵和
NTFS檔案系統許可權以及Micorsoft Windows用戶許可權。
帳戶信息的更改將在下一次服務啟動時生效。如果您需要更改與 SQL Server 以及 SQL Server Agent 相關聯的帳戶,那么您必須使用 Enterprise Manager 分別對兩個服務進行更改。
7.在防火牆上禁用 SQL Server 連線埠。 SQL Server 的默認安裝將監視 TCP 連線埠 1433 以及UDP連線埠 1434。配置您的防火牆來過濾掉到達這些連線埠的數據包。而且,還應該在防火牆上阻止與指定實例相關聯的其他連線埠。
8.使用最安全的檔案系統。
NTFS 是最適合安裝 SQL Server 的檔案系統。它比 FAT 檔案系統更穩定且更容易恢復。而且它還包括一些安全選項,例如檔案和目錄 ACL 以及
檔案加密(EFS)。在安裝過程中,如果偵測到 NTFS,SQL Server 將在註冊表鍵和檔案上設定合適的 ACL。不應該去更改這些許可權。
通過 EFS,
資料庫檔案將在運行 SQL Server 的帳戶身份下進行加密。只有這個帳戶才能解密這些檔案。如果您需要更改運行 SQL Server 的帳戶,那么您必須首先在舊帳戶下解密這些檔案,然後在新帳戶下重新進行加密。
9.刪除或保護舊的安裝檔案。
SQL Server 安裝檔案可能包含由純文本或簡單加密的憑證和其他在安裝過程中記錄的敏感配置信息。這些日誌檔案的保存位置取決於所安裝的SQL Server版本。在 SQL Server 2000 中,下列檔案可能受到影響:默認安裝時<systemdrive>:\Program Files\Microsoft SQL Server\MSSQL\Install資料夾中,以及指定實例的<systemdrive>:\Program Files\Microsoft SQL Server\ MSSQL$<Instance Name>\Install資料夾中的sqlstp.log, sqlsp.log和setup.iss
如果當前的系統是從 SQL Server 7.0 安裝升級而來的,那么還應該檢查下列檔案:%Windir% 資料夾中的setup.iss以及Windows Temp資料夾中的sqlsp.log。
Microsoft發布了一個免費的實用工具 Killpwd,它將從您的系統中找到並刪除這些密碼。
10.審核指向 SQL Server 的連線。
SQL Server 可以記錄事件信息,用於系統管理員的審查。至少您應該記錄失敗的 SQL Server 連線嘗試,並定期地查看這個日誌。在可能的情況下,不要將這些日誌和數據檔案保存在同一個硬碟上。要在 SQL Server 的 Enterprise Manager 中審核失敗連線,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點擊伺服器,然後點擊屬性。
3) 在安全性選項卡的審核等級中,點擊失敗。
4) 要使這個設定生效,您必須停止並重新啟動伺服器。
數據倉庫。 SQL Server 2000 中包括析取和分析匯總數據以進行在線上分析處理 (OLAP) 的工具。SQL Server 中還包括一些工具,可用來直觀地設計資料庫並通過 English Query 來分析數據。
優點
1、高性能設計,可充分利用WindowsNT的優勢。
2、系統管理先進,支持Windows圖形化管理工具,支持本地和遠程的系統管理和配置。
3、強壯的事務處理功能,採用各種方法保證數據的完整性。
4、支持對稱多處理器結構、存儲過程、ODBC,並具有自主的SQL語言。 SQLServer以其內置的數據複製功能、強大的管理工具、與Internet的緊密集成和開放的系統結構為廣大的用戶、開發人員和系統集成商提供了一個出眾的資料庫平台。
版本
對於新接觸SQL資料庫的人來說,類似這幾個問題的有關於SQL版本的問題可以說不少,但又懶得去仔細研究。問題雖然簡單,可是影響卻不小。
版本區別
SQL Server 2000有四個版本:企業版/標準版/個人版/開發版
1、企業版和標準版需要安裝在伺服器作業系統上,如WindowsNT Server/Windows 2000 Server/Windows 2003 Server等
SQL Server 2000 企業版:作為生產資料庫伺服器使用。支持 SQLServer 2000 中的所有可用功能,並可根據支持最大的 Web 站點和企業在線上事務處理 (OLTP) 及數據倉庫系統所需的性能水平進行伸縮。
SQL Server 2000 標準版:作為小工作組或部門的資料庫伺服器使用。
2、個人版需要安裝在個人作業系統上,如Windows98/Windows2000 Professional/Windows XP Home/Windows XP Professional等
SQL Server 2000 個人版:供移動的用戶使用,這些用戶有時從網路上斷開,但所運行的應用程式需要 SQLServer 數據存儲。在客戶端計算機上運行需要本地 SQLServer 數據存儲的獨立應用程式時也使用個人版。
3、開發版可以安裝在任何微軟的作業系統上。
SQL Server 2000 開發版:供程式設計師用來開發將 SQLServer 2000 用作數據存儲的應用程式。雖然開發版支持企業版的所有功能,使開發人員能夠編寫和測試可使用這些功能的應用程式,但是只能將開發版作為開發和測試系統使用,不能作為生產伺服器使用。
4、SQL Server 2000 Windows CE 版
使用Microsoft? SQL Server 2000? Windows? CE 版 (SQL ServerCE) 在 Windows CE 設備上進行數據存儲。能用任何版本的 SQL Server 2000 複製數據,以使Windows CE 數據與主資料庫保持同步。
5、SQL Server 2000 企業評估版
可從 Web上免費下載的功能完整的版本。僅用於評估 SQLServer 功能;下載 120天后該版本將停止運行。
除了這些版本的 SQLServer 2000 之外,SQL Server 2000 Desktop Engine 組件允許應用程式開發人員用他們的應用程式分發 SQLServer 2000 關係資料庫引擎的複本。因為 SQL Server 2000 Desktop Engine 中的資料庫引擎的功能與 SQLServer 各版本中的資料庫引擎相似,所以Desktop Engine 資料庫的大小不能超過 2 GB。
版本對比
SQL Server包括企業版,標準版,個人版,開發版,桌面引擎(MSDE),評估版,CE版
1、評估版用於評估,CE版用於WindowsCE, 就不多說了
2、從功能上,企業版和開發版是一對,標準版和個人版是一對。企業版和開發版主要用於大用戶,可以支持更多的CPU,記憶體,可以支持集群(Cluster),日誌傳輸(logshipping),並行DBCC, 並行創建索引,索引視圖等高級功能。
3、從安裝上看,企業版和標準版是一對,個人版,開發版和桌面引擎是一組,企業版和標準版只能安裝在Windows的Server版(NT,2000, 2003)上, 個人版,開發版和桌面引擎可以安裝在更多的系統(包括NTWorkstation, 2000 professional, XP 等。98隻能安裝個人版或桌面引擎,但桌面引擎得資料庫不能超過2G)。
4、投入運行時使用企業版,標準版或桌面引擎,(個人版,開發版分別用於對應標準版,企業版的開發)。
標準版和企業版差別
1、是否支持MSCS群集
2、是否支持全文索引
3、是否支持分散式分區視圖
4、是否支持日誌傳送
5、是否支持索引視圖的CPU利用
企業版
提供最高的可用性;個人版和MSDE中硬性填入某些代碼使得並發用戶在五個以上之後性能大打折扣。
標準版:
資料庫引擎功能缺少故障轉移群集(最多四個節點)、支持SQLServer企業管理器中的故障轉移、日誌傳送、並行DBCC、並行CREATEINDEX、增強的預讀和掃描、索引視圖、聯合資料庫伺服器、支持系統區域網路 (SAN)、支持語言設定的圖形實用工具,對於Analysis Services缺少用戶定義OLAP分區、分區嚮導、連結OLAP多維數據集、ROLAP維度支持、支持HTTPInternet、計算單元、回寫到維度、支持超大型維度、實時 OLAP、分散式分區多維數據集,win2000下最大隻支持4個CPU的SMP,NT下最大隻支持8個
CPU(企業版) ,買10個授權是不可以上20個用戶的(一般是限制並發用戶數,連線數決定於OS)
企業版:
作為生產資料庫伺服器使用。支持SQL SERVER 2000中的所有可用功能,並根據支持最大的Web站點和企業在線上事務處理(OLTP及數據倉庫系統所需要的性能水平進行伸縮。
標準版:
作為工作組或者部門資料庫伺服器使用。
硬體和作業系統要求
下表說明安裝 Microsoft SQL Server 2000 或 SQL Server 客戶端管理工具和庫的硬體要求。
硬體 | 最低要求 |
---|
| |
| 至少 64 MB,建議 128 MB 或更多。根據筆者的經驗,記憶體容量可以和數據容量保持1:1的比例,這樣可以更好的發揮其效能。 |
| 需要約500MB的程式空間,以及預留500M的數據空間 |
| 需要設定成800x600模式,才能使用其圖形分析工具 |
下表說明為使用 Microsoft SQL Server 2000 各種版本或組件而必須安裝的作業系統。
SQL Server 版本或組件 | 作業系統要求 |
---|
| Microsoft Windows NT Server 4.0、Microsoft Windows NT Server 4.0 企業版、Windows 2000 Server、Windows 2000 Advanced Server 和 Windows 2000 Data Center Server。(所有版本均需要安裝IE5.0以上版本瀏覽器) |
| Microsoft Windows NT Server 4.0、Windows 2000 Server、Microsoft Windows NT Server 企業版、Windows 2000 Advanced Server 和 Windows 2000 Data Center Server。 |
| Microsoft Windows Me、Windows 98、Windows NT Workstation 4.0、Windows 2000 Professional、Microsoft Windows NT Server 4.0、Windows 2000 Server 和所有更高級的 Windows 作業系統。 |
註:SQL Server 2000 的某些功能要求在Microsoft Windows 2000 Server以上的版本才能運行。因此大家安裝Windows Server 2000(建議為Advanced版本),可以學習和使用到SQL Server 2000的更多功能,以及享受更好的性能。
保護SQL Server的十個措施
為提高 SQL Server安裝的安全性,可以實施一下十個措施
1.安裝最新的服務包。
為了提高伺服器安全性,最有效的一個方法就是升級到 SQL Server 2000 Service Pack 3a (SP3a)。另外,您還應該安裝所有已發布的安全更新。
2.使用 Microsoft 基線安全性分析器(MBSA)來評估伺服器的安全性。
MBSA 是一個掃描多種 Microsoft 產品的不安全配置的工具,包括 SQL Server 和 Microsoft SQL Server 2000 Desktop Engine (MSDE 2000)。它可以在本地運行,也可以通過網路運行。該工具針對下面問題對 SQL Server 安裝進行檢測:
1) 過多的sysadmin固定伺服器角色成員。
2) 授予sysadmin以外的其他角色創建 CmdExec 作業的權利。
3) 空的或簡單的密碼。
4) 脆弱的身份驗證模式。
5) 授予管理員組過多的權利。
6) SQL Server數據目錄中不正確的訪問控制表(ACL)。
7) 安裝檔案中使用純文本的sa密碼。
8) 授予guest帳戶過多的權利。
9) 在同時是域控制器的系統中運行SQL Server。
10) 所有人(Everyone)組的不正確配置,提供對特定註冊表鍵的訪問。
11) SQL Server 服務帳戶的不正確配置。
12) 沒有安裝必要的服務包和安全更新。
3.使用 Windows 身份驗證模式。
在任何可能的時候,都應該對指向 SQL Server 的連線要求 Windows 身份驗證模式。它通過限制對Microsoft Windows®用戶和域用戶帳戶的連線,保護 SQL Server 免受大部分 Internet 的工具的侵害,而且,伺服器也將從 Windows 安全增強機制中獲益,例如更強的
身份驗證協定以及強制的密碼複雜性和過期時間。另外,憑證委派(在多台伺服器間
橋接憑證的能力)也只能在 Windows 身份驗證模式中使用。在客戶端,Windows 身份驗證模式不再需要存儲密碼。存儲密碼是使用標準 SQL Server 登錄的應用程式的主要漏洞之一。要在 SQL Server 的 Enterprise Manager 安裝 Windows 身份驗證模式,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點擊伺服器,然後點擊屬性。
3) 在安全性選項卡的身份驗證中,點擊僅限 Windows。
4.隔離您的伺服器,並定期備份。
物理和邏輯上的隔離組成 了SQL Server 安全性的基礎。駐留資料庫的機器應該處於一個從物理形式上受到保護的地方,最好是一個上鎖的機房,配備有洪水檢測以及火災檢測/消防系統。資料庫應該安裝在企業內部網的安全區域中,不要直接連線到 Internet。定期備份所有數據,並將副本保存在安全的站點外地點。
5.分配一個強健的sa密碼。
sa帳戶應該總擁有一個強健的密碼,即使在配置為要求 Windows 身份驗證的伺服器上也該如此。這將保證在以後伺服器被重新配置為混合模式身份驗證時,不會出現空白或脆弱的sa。要分配sa密碼,請按下列步驟操作:
1) 展開伺服器組,然後展開伺服器。
2) 展開安全性,然後點擊登錄。
3) 在細節窗格中,右鍵點擊SA,然後點擊屬性。
4) 在密碼方框中,輸入新的密碼。
6.限制 SQL Server服務的許可權。
SQL Server 2000 和 SQL Server Agent 是作為 Windows 服務運行的。每個服務必須與一個 Windows 帳戶相關聯,並從這個帳戶中衍生出安全性上下文。SQL Server允許sa 登錄的用戶(有時也包括其他用戶)來訪問作業系統特性。這些作業系統調用是由擁有伺服器進程的帳戶的安全性上下文來創建的。如果伺服器被攻破了,那么這些作業系統調用可能被利用來向其他資源進行攻擊,只要所擁有的過程(SQL Server服務帳戶)可以對其進行訪問。因此,為 SQL Server 服務僅授予必要的許可權是十分重要的。 推薦採用下列設定:
1) SQL Server Engine/MSSQLServer
如果擁有指定實例,那么它們應該被命名為MSSQL$InstanceName。作為具有一般用戶許可權的Windows 域用戶帳戶運行。不要作為本地系統、本地管理員或域管理員帳戶來運行。
2) SQL Server Agent Service/SQLServerAgent
如果您的環境中不需要,請禁用該服務;否則請作為具有一般用戶許可權的Windows域用戶帳戶運行。不要作為本地系統、本地管理員或域管理員帳戶來運行。
重點: 如果下列條件之一成立,那么 SQL Server Agent 將需要本地 Windows管理員許可權:
SQL Server Agent 使用標準的 SQL Server 身份驗證連線到SQL Server(不推薦)。
SQL Server Agent 使用多伺服器管理主伺服器(MSX)帳戶,而該帳戶使用標準 SQL Server 身份驗證進行連線。
SQL Server Agent 運行非sysadmin固定伺服器角色成員所擁有的 Microsoft ActiveX®腳本或 CmdExec 作業。
如果您需要更改與 SQL Serve r服務相關聯的帳戶,請使用 SQL Server Enterprise Manager。Enterprise Manager 將為 SQL Server 所使用的檔案和註冊表鍵設定合適的許可權。不要使用 Microsoft 管理控制台的"服務"(在控制臺中)來更改這些帳戶,因為這樣需要手動地調製大量的註冊表鍵和
NTFS檔案系統許可權以及Micorsoft Windows用戶許可權。
帳戶信息的更改將在下一次服務啟動時生效。如果您需要更改與 SQL Server 以及 SQL Server Agent 相關聯的帳戶,那么您必須使用 Enterprise Manager 分別對兩個服務進行更改。
7.在防火牆上禁用 SQL Server 連線埠。 SQL Server 的默認安裝將監視 TCP 連線埠 1433 以及UDP連線埠 1434。配置您的防火牆來過濾掉到達這些連線埠的數據包。而且,還應該在防火牆上阻止與指定實例相關聯的其他連線埠。
8.使用最安全的檔案系統。
NTFS 是最適合安裝 SQL Server 的檔案系統。它比 FAT 檔案系統更穩定且更容易恢復。而且它還包括一些安全選項,例如檔案和目錄 ACL 以及
檔案加密(EFS)。在安裝過程中,如果偵測到 NTFS,SQL Server 將在註冊表鍵和檔案上設定合適的 ACL。不應該去更改這些許可權。
通過 EFS,
資料庫檔案將在運行 SQL Server 的帳戶身份下進行加密。只有這個帳戶才能解密這些檔案。如果您需要更改運行 SQL Server 的帳戶,那么您必須首先在舊帳戶下解密這些檔案,然後在新帳戶下重新進行加密。
9.刪除或保護舊的安裝檔案。
SQL Server 安裝檔案可能包含由純文本或簡單加密的憑證和其他在安裝過程中記錄的敏感配置信息。這些日誌檔案的保存位置取決於所安裝的SQL Server版本。在 SQL Server 2000 中,下列檔案可能受到影響:默認安裝時<systemdrive>:\Program Files\Microsoft SQL Server\MSSQL\Install資料夾中,以及指定實例的<systemdrive>:\Program Files\Microsoft SQL Server\ MSSQL$<Instance Name>\Install資料夾中的sqlstp.log, sqlsp.log和setup.iss
如果當前的系統是從 SQL Server 7.0 安裝升級而來的,那么還應該檢查下列檔案:%Windir% 資料夾中的setup.iss以及Windows Temp資料夾中的sqlsp.log。
Microsoft發布了一個免費的實用工具 Killpwd,它將從您的系統中找到並刪除這些密碼。
10.審核指向 SQL Server 的連線。
SQL Server 可以記錄事件信息,用於系統管理員的審查。至少您應該記錄失敗的 SQL Server 連線嘗試,並定期地查看這個日誌。在可能的情況下,不要將這些日誌和數據檔案保存在同一個硬碟上。要在 SQL Server 的 Enterprise Manager 中審核失敗連線,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點擊伺服器,然後點擊屬性。
3) 在安全性選項卡的審核等級中,點擊失敗。
4) 要使這個設定生效,您必須停止並重新啟動伺服器。