日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Sqlserver中 登录用户只能看到自己拥有权限的库

發布時間:2024/9/5 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Sqlserver中 登录用户只能看到自己拥有权限的库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Sqlserver中 登錄用戶只能看到自己擁有權限的庫

轉自:https://www.cnblogs.com/huangtailang/p/4209180.html SSMS設置:https://www.cnblogs.com/willingtolove/p/9122738.html 問題背景:公司的一臺數據庫服務器上放在多個數據庫,每個數據庫都使用不同的登錄名稱,但在將項目文件發布到Ftp時,有些Ftp的信息是在客戶那邊的 一旦客戶那邊使用配置文件中的數據庫信息連接到數據庫他就能夠看到服務器上所有的數據庫,雖然它不能訪問其他的數據庫但還是有安全隱患的 現在我需要的是指定的登錄用戶只能看到并訪問它自己的數據庫而不能看到其他的數據庫,于是在網絡上找到解決方案 --創建測試數據庫 Create database Test; USE master GO --通過sp_addlogin創建登錄名 --TestUser:用戶登陸賬號 --Test123456:用戶登陸密碼 execute sp_addlogin 'TestUser','Test123456' --在數據庫Test里創建數據庫TestUser賬號 --每一個TestUser為登陸名 --第二個TestUser為數據庫賬號 execute sp_grantdbaccess 'TestUser','TestUser' --將TestUser賬號添加到數據庫角色為數據庫所有者 execute sp_addrolemember 'db_owner','TestUser'

?

在SSMS中使用“TestUser”賬號登錄后就可能看到所有的數據庫 但如果訪問的數據庫不是Test則為提示沒有權限 USE master GO --將所有數據庫的查看權限給Public角色,每個登錄用戶只能查看指定的數據庫 --此語句會導致服務器上所有的用戶在沒有設置數據庫權限的情況下不會顯示任何數據庫,有可能會影響正常使用 DENY VIEW any DATABASE TO PUBLIC; --將數據庫Test的所有權給TestUser用戶 --TestUser用戶可以查看并訪問Test數據庫 ALTER AUTHORIZATION ON DATABASE::Test TO TestUser

?

“DENY VIEW any DATABASE TO PUBLIC;”后如果沒有進行權限設置默認的登錄用戶是不能查看任何數據庫的 “ALTER AUTHORIZATION ON DATABASE::Test?TO?TestUser”后TestUser就可以只能查看并訪問Test數據庫了 參考: 使SQL用戶只能看到自己擁有權限的庫 MSDN?VIEW ANY DATABASE 權限? MSDN?ALTER AUTHORIZATION (Transact-SQL)? MSDN?sp_addlogin (Transact-SQL) 來自為知筆記(Wiz) 標簽:?Sql Server,?SQL Server 權限

轉載于:https://www.cnblogs.com/gered/p/10254560.html

總結

以上是生活随笔為你收集整理的Sqlserver中 登录用户只能看到自己拥有权限的库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。