Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So deaktivieren Sie SQL Server Management Studio für einen Benutzer

Sie können den DATENBANK ANZEIGEN VERWEIGERN Befehl für den/die bestimmten Benutzer. Dies ist eine neue Funktion, die in SQL Server 2008 verfügbar ist.

Es verhindert, dass der Benutzer den Systemkatalog (sys.databases, sys.sysdatabases usw.) sieht, und macht die DB daher in SQL Management Studio (SSMS) für ihn unsichtbar.

Führen Sie diesen Befehl aus der Master-Datenbank aus:

DENY VIEW ANY DATABASE TO 'loginName'

Der Benutzer kann weiterhin über Ihre Anwendung auf die Datenbank zugreifen. Wenn sie sich jedoch über SSMS anmelden, wird Ihre Datenbank nicht in der Liste der Datenbanken angezeigt, und wenn sie ein Abfragefenster öffnen, wird Ihre Datenbank nicht in der Dropdown-Liste angezeigt.

Dies ist jedoch nicht narrensicher. Wenn der Benutzer schlau genug ist, den Abfragebefehl auszuführen:

USE <YourDatabaseName>

Dann sehen sie die Datenbank im Query Analyzer.

Da diese Lösung Sie zu 90 % dorthin bringt, würde ich der Datenbank einen obskuren Namen geben, ohne den Benutzern den Namen der Datenbank mitzuteilen.