在SQL Server 2008中,為了保護數據庫的安全,需要給不同的使用者開通不同的訪問用戶,那麼如何簡單的控制用戶的權限呢?下面我們就創建一個只讀用戶,給大家學習使用。
SQL Server 2008
Microsoft SQLServer Management Studio
1、首先打開【Microsoft SQLServer Management Studio】,用管理員賬戶登錄。這裡我選的服務器是【local】,賬戶是【windows身份驗證】,如果是連接遠程的服務器,輸入遠程服務器地址即可。
2、找到【安全性】,打開,可以看到【登錄名】,在上面右鍵。
3、選擇【新建登錄名】
4、在【常規】選項中,輸入登錄名,選擇身份驗證方式。這裡我選用了【SQL Server 身份驗證】同時,我勾掉了【強制實施密碼策略】
5、在右側的【用戶映射】選項卡中,【映射到此登錄名的用戶】選擇該用戶可以操作的數據庫。針對每一個數據庫,在下方【數據庫角色成員身份】中,選擇【db_datareader】
6、這樣,一個只讀用戶就建立好了,用此用戶登錄時,就只能對映射的數據庫進行只讀訪問了。
SqlServer2008添加只讀用戶查看存儲過程權限
昨天老蔡說過,一般企業都會設置對應數據庫的對應權限賬戶,而當我們設置只給某些用戶授權只讀權限時(即public),這些用戶可能需要查看sql的存儲過程;因此需要授權給它。
第一步:使用sa用戶進入數據庫,在安全性中找到改用戶右鍵-屬性
第二步:找到安全對象-點擊搜索
第三步:在彈出的窗口中找到服務器名
第四步:在下列的選擇框中找到”查看任意定義“勾上保存,並重啟數據庫服務,mssqlserver,重啟後注意要啟動SQL代理,因為重啟mssqlserver時會把它停掉。
在sql server 如何創建一個只讀賬戶
1、進入sqlserver management studio
2、選擇安全性->登錄名->右鍵新建登錄名
3、在常規裡輸入用戶名和密碼
4、在"用戶映射"裡“映射到此登錄名的用戶”選擇該用戶可以操作的數據庫
5、在“數據庫角色成員身份”裡選擇"db_datareader",
6、這樣一個只讀用戶就創建完成了。
服務器角色參考 (可以對數據庫的操作)
bulkadmin 可以運行 bulk insert 語句 bulk insert 詳細 http://www.jb51.net/article/70667.htm
dbcreator 創建,修改,刪除,還原任何數據庫
diskadmin 管理磁盤文件
processadmin 可以終止在數據庫引擎實例中運行的程序
securityadmin 可以管理登錄名及其屬性,具有grant,deny,和revoke服務器和數據庫級別權限,還可以重置sql server 登錄名的密碼
serveradmin 可以更改服務器范圍的配置選項和關閉服務器
setupadmin 可以添加和刪除鏈接服務器,並對可以執行某些系統執行存儲過程(如,sp_serveroption)
sysadmin 在sql server中進行任何活動,該覺得的權限跨越所有其他固定服務器角色,默認情況下,windows builtin\admin組(本地管理員組)的所有成員都是sysadmin
固定服務器角色的成員
用戶映射參考 (可以對數據庫的數據進行操作)
db_owner 可以執行數據庫中技術所有動作的用戶
db_accessadmin 可以添加,刪除用戶的用戶
db_datareader 可以查看所有數據庫中用戶表內數據的用戶
db_datawrite 可以添加,修改,刪除所有數據庫用戶表內數據的用戶
db_ddladmin 可以在數據庫中執行ddl操作的用戶,DDL(Data Definition Language)數據表的創建以及管理
db_securityadmin 可以管理數據庫中與安全權限有關所有動作的用戶
db_backoperator 可以備份數據庫的用戶(可以發布dbcc和checkPoint語句,這兩個語句一般在備份前使用
db_denydatareader 不能看到數據庫中任何數據的用戶
db_denydatawrite 不能修改數據庫中任何數據的用戶