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