SQL2000數據庫由於自身漏洞問題,黑客很容易通過他取得系統管理員權限。
SQL默認以SYSTEM權限運行,權限超級強大。
為了讓服務器更安全,建議設置SQL2000以GUESTS權限運行,讓黑客即使入侵了數據庫,也沒法取得系統管理員權限,防止進一步造成破壞。
具體設置方法如下:
1、建立一個帳戶(這裡假定為sqlservice),屬於GUESTS組,注意取消其他權限,只允許GUESTS組,如下圖:
2、進入SQL SERVER安全目錄,設置“sqlservice”帳戶擁有完全控制的權限。
我本地SQL安裝在:D:\Program Files\Microsoft SQL Server\,因此需要設置權限的目錄是:D:\Program Files\Microsoft SQL Server\MSSQL\
3、設置SQL安裝盤根目錄有“sqlservice”讀權限,我本地是D盤。
4、打開SQL企業管理器,在“(local)(windows NT)”上點右鍵,然後選擇“屬性”
5、在彈出的窗口中選擇“安全性”;選擇“啟動服務帳戶”-“本帳戶”,填寫上剛才新建的sqlservice和密碼,然後點“確定”保存。
此時系統會提示您是否需要重啟SQL,選擇“確定”即可重啟。
如下圖所示,用戶名是“sqlservice”,說明已經設置好了。
角色是一個強大的工具,使您得以將用戶集中到一個單元中,然後對該單元應用權限。對一個角色授予、拒絕或廢除的權限也適用於該角色的任何成員。可以建立一個角色來代表單位中一類工作人員所執行的工作,然後給這個角色授予適當的權限。當工作人員開始工作時,只須將他們添加為該角色成員,當他們離開工作時,將他們從該角色中刪除。而不必在每個人接受或離開工作時,反復授予、拒絕和廢除其權限。權限在用戶成為角色成員時自動生效。
Microsoft® Windows NT® 和 Windows® 2000 組的使用方式與角色很相似。有關更多信息,請參見組。
如果根據工作職能定義了一系列角色,並給每個角色指派了適合這項工作的權限,則很容易在數據庫中管理這些權限。之後,不用管理各個用戶的權限,而只須在角色之間移動用戶即可。如果工作職能發生改變,則只須更改一次角色的權限,並使更改自動應用於角色的所有成員,操作比較容易。
在 Microsoft® SQL Server™ 2000 和 SQL Server 7.0 版中,用戶可屬於多個角色。
以下腳本說明登錄、用戶和角色的添加,並為角色授予權限。
USE master
GO
sp_grantlogin 'NETDOMAIN\John'
GO
sp_defaultdb 'NETDOMAIN\John', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Sarah'
GO
sp_defaultdb 'NETDOMAIN\Sarah', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Betty'
GO
sp_defaultdb 'NETDOMAIN\Betty', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Ralph'
GO
sp_defaultdb 'NETDOMAIN\Ralph', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Diane'
GO
sp_defaultdb 'NETDOMAIN\Diane', 'courses'
GO
USE courses
GO
sp_grantdbaccess 'NETDOMAIN\John'
GO
sp_grantdbaccess 'NETDOMAIN\Sarah'
GO
sp_grantdbaccess 'NETDOMAIN\Betty'
GO
sp_grantdbaccess 'NETDOMAIN\Ralph'
GO
sp_grantdbaccess 'NETDOMAIN\Diane'
GO
sp_addrole 'Professor'
GO
sp_addrole 'Student'
GO
sp_......余下全文>>
我本地沒有sql2008,只有sql2005。因為sql2000和sql2005差不多的,呵呵,估計08和05兩者該差不多,你試試下面sql2005的方法吧:數據庫——》安全性——》右擊登錄名——新建,然後你就可以新建登錄名和設置權限了。呵呵,試試吧!