Sql-Server
如何限制 SSMS 列出特定使用者的數據庫(Windows 2012 + Plesk)
我們使用帶有 Plesk 的 windows 2012 R2 伺服器並為我們的客戶提供共享主機。
版本詳細資訊:MSSQL 伺服器 2012 和 SSMS 11.0.2100.60
在 SSMS 中,如果我們使用特定使用者登錄,它會顯示所有數據庫而不是特定使用者的數據庫。向所有使用者顯示所有數據庫,這是一個安全問題。(雖然,他們無法訪問數據庫,只顯示名稱)。
我該如何限制它,只顯示屬於該特定使用者的數據庫。
至少使用 SQL Server Management Studio -16.3,您可以右鍵點擊
Databases
SSMS 中的節點並添加過濾器以限制顯示該使用者擁有的數據庫。
在 SQL Server 中,限制只能查看一個數據庫是不可能的。您可以看到所有內容,也可以什麼也沒有看到(master 和 tempdb 除外)。隱藏所有數據庫可以通過以下步驟實現:
右鍵點擊對象資源管理器中的實例 –> 屬性 –> 權限 –> 公共 –> 取消選中授予:‘查看任何數據庫’。
在這種情況下,只有 db_owner 和 sysadmin 可以看到數據庫。db_owner 只能看到他擁有的那個,而 sysadmin 可以看到所有。再次授予 db_owner 權限不是一個好主意,因為在 db 級別它是最高權限。一個數據庫也只能有一個所有者。希望 MS 能盡快解決這個問題。