登陸管理:sp_addlogin 新增帳號
sp_droplogin 刪除帳號
sp_grantlogins 允許某windows帳號訪問
sp_denylogins 禁止某windows帳號訪問
sp_revokelogins 刪除某windows帳號訪問
sp_helplogin 查看帳號信息
sp_addsrvrolemember 將某用戶添加到服務器角色
sp_dropsrvrolemember 將某用戶從數據庫角色中刪除
sp_helpsrvrole 查看服務器角色的信息
數據庫用戶管理:sp_grantaccess 建立數據庫用戶
sp_revokedbaccess 刪除數據庫用戶
sp_helpuser 查看用戶信息
數據庫角色管理:sp_addrole 建立數據庫角色
sp_addrolemember 將用戶加入數據庫角色
sp_helprole 查看數據庫角色信息
sp_helprolemember 查看某數據庫角色的所有成員
sp_droprole 刪除角色
sp_droprolemember 刪除角色中的某一成員
--切換到你新增的用戶要控制的數據庫
use 數據庫名
go
--新增用戶
exec sp_addlogin ''test'' --添加登錄
exec sp_grantdbaccess N'test' --使其成爲當前數據庫的合法用戶
exec sp_addrolemember N'db_owner', N'test' --授予對自己數據庫的所有權限
--這樣創建的用戶就只能訪問自己的數據庫,及數據庫中包含了guest用戶的公共表
go
--刪除測試用戶
exec sp_revokedbaccess N''test'' --移除對數據庫的訪問權限
exec sp_droplogin N''test'' --刪除登錄
exec sp_addlogin 'bbb','123'
exec sp_grantdbaccess 'bbb'
grant insert,select,update,delete on bcd.dbo.table1 to bbb
exec sp_revokedbaccess 'bbb'
exec sp_addrolemember 'db_owner', 'bbb'
exec sp_revokedbaccess 'aaa'
exec sp_droplogin 'aaa'
---------------------------------------------------------------------------
最後一步,爲具體的用戶設置具體的訪問權限,這個可以參考下面的最簡示例:
--添加
--添加用戶:
exec sp_addlogin '用戶名','密碼','默認數據庫名'
--添加到數據庫
exec sp_grantdbaccess '用戶名'','數據庫名'
--權限
grant insert,select,update,delete on table1 to public
文章出處:http://www.diybl.com/course/7_databases/sql/sqlServer/2008126/97625.html
--下面的示例將 Windows NT 用戶 Corporate/HelenS 添加到 sysadmin 固定服務器角色中。
--T-SQL demo
EXEC sp_addsrvrolemember ''Corporate/HelenS'', ''sysadmin''
對 sysadmin 角色成員以外的所有用戶,securityadmin 具有執行 sp_password 存儲過程的權限。bulkadmin 固定服務器角色具有執行 BULK INSERT 語句的權限。與所有指定固定服務器角色成員一樣,bulkadmin 角色成員也可以將其它登錄添加到角色。但是,由於與執行 BULK INSERT 語句相關聯的安全含義(BULK INSERT 語句要求對運行服務器的網絡和計算機上的任何數據具有讀權限),bulkadmin 角色成員授予其它角色成員權限可能並不理想。bulkadmin
角色爲 sysadmin 固定服務器角色成員提供了一種方法,可以委託要求執行 BULK INSERT 語句的任務,而不用授予用戶 sysadmin 權限。允許 bulkadmin 角色成員執行 BULK INSERT 語句,但是這些成員對要插入數據的表仍必須具有 INSERT 權限。
--切換到你新增的用戶要控制的數據庫
use 數據庫名
go
--新增用戶
exec sp_addlogin ''test'' --添加登錄
exec sp_grantdbaccess N''test'' --使其成爲當前數據庫的合法用戶
exec sp_addrolemember N''db_owner'', N''test'' --授予對自己數據庫的所有權限
--這樣創建的用戶就只能訪問自己的數據庫,及數據庫中包含了guest用戶的公共表
go
--刪除測試用戶
exec sp_revokedbaccess N''test'' --移除對數據庫的訪問權限
exec sp_droplogin N''test'' --刪除登錄
---------------------------------------------------------------------------
最後一步,爲具體的用戶設置具體的訪問權限,這個可以參考下面的最簡示例:
--添加
--添加用戶:
exec sp_addlogin ''用戶名'',''密碼'',''默認數據庫名''
--添加到數據庫
exec sp_grantdbaccess ''用戶名'',''數據庫名''
--權限
grant insert,select,update,delete on table1 to public