1.新建登錄用戶
以管理員身份登陸數據庫(權限最高的身份如sa),點擊安全性->登錄名,右鍵新建登錄名,輸入登錄名和密碼,取消強制實施密碼策略。
2.將服務器角色設置為public
注意:很重要的一步驟,檢查【用戶映射】中該用戶是否有對應的數據庫權限,如果有請把勾去掉,否則會影響第4點的操作結果
3.將public服務器角色的屬性->取消查看所有數據庫的權限
點擊安全性->服務器角色->public,右鍵屬性。點擊服務器后如下圖取消查看任意數據庫的權限
或者執行如下SQL:
REVOKE VIEW ANY DATABASE TO [public]
4.將待授權的數據庫的db_owner指派給剛注冊的新用戶
在數據庫中新建查詢,輸入下列sql語句。完成對用戶權限的設定,做到了新建用戶只能查看和操作特定數據庫(除系統數據庫外)
Use [WH_R]//WH_R為數據庫名稱 go EXEC dbo.sp_changedbowner N'user'//user為剛新建的用戶
內容大部分來自https://blog.csdn.net/qq_35938548/article/details/78269112,感謝大佬分享