Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak wyłączyć SQL Server Management Studio dla użytkownika?

Możesz użyć ODMÓW PODGLĄDANIA DOWOLNEJ BAZY DANYCH polecenie dla konkretnego użytkownika(ów). Jest to nowa funkcja dostępna w SQL Server 2008.

Uniemożliwia użytkownikowi zobaczenie katalogu systemowego (sys.databases, sys.sysdatabases, itp.) i dlatego sprawia, że ​​baza danych jest dla nich niewidoczna w SQL Management Studio (SSMS).

Uruchom to polecenie z głównej bazy danych:

DENY VIEW ANY DATABASE TO 'loginName'

Użytkownik nadal ma dostęp do bazy danych za pośrednictwem Twojej aplikacji. Jeśli jednak zalogują się przez SSMS, Twoja baza danych nie pojawi się na liście baz danych, a jeśli otworzą okno zapytania, Twoja baza danych nie pojawi się na liście rozwijanej.

Nie jest to jednak niezawodne. Jeśli użytkownik jest wystarczająco inteligentny, aby uruchomić polecenie zapytania:

USE <YourDatabaseName>

Następnie zobaczą bazę danych w analizatorze zapytań.

Ponieważ to rozwiązanie zabiera cię tam w 90%, nadałbym bazie danych jakąś niejasną nazwę, aby użytkownicy nie znali nazwy bazy danych.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zliczanie MDX w czasie bez określonej hierarchii

  2. Kursor SQL Server - pętla przez wiele serwerów i wykonanie zapytania

  3. Jak wybrać wartość atrybutu xsi:type w SQL Server?

  4. W jaki sposób mój wyzwalacz został usunięty?

  5. Zmiana właściwości połączonego serwera w SQL Server