如何讓用戶只能訪問特定的數據庫(MSSQL)

jopen 8年前發布 | 8K 次閱讀 SQL Server 數據庫服務器

背景

客戶的SQL Server實例上有多個廠商的數據庫,每個數據庫由各自的進行廠進行商維護,

為了限定不同廠商的維護人員只能訪問自己的數據庫,現需要給各個廠商限定權限,讓他們登錄SQL Server只能看到授權的數據庫而無法看到其他數據庫。

解決方案

1.先給不同的廠商創建不同的登錄名(如下以一個廠商為例)

2.將登錄名加入到public服務器角色中,然后點擊確定

3.將待授權的數據庫的dbowner指派給該用戶

Use [xjcs]
go
EXEC dbo.sp_changedbowner N'provider1'

此時用'provider1'登錄SQL Server,便只能看到指定的用戶數據庫了(系統數據庫除外)

說明:

我之前希望在第2個步驟中設置登錄名的用戶映射來實現這個需求,如下圖,但沒有效果,登錄到SQL Server后還是無法看到用戶數據庫,

所以才采用上述方法:

來自: http://www.cnblogs.com/i6first/p/5123995.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!