По умолчанию, если вы подключаетесь к удаленному серверу SQL через учетную запись, которая имеет доступ, скажем, к 1 из 10 баз данных. Вы по-прежнему будете видеть в обозревателе объектов все остальные базы данных, очевидно, из-за разрешений вы не можете на самом деле запрашивать их, но вы можете видеть их имена.
Я слышал, что есть метод, который отключает это поведение, но я не смог найти ответ, кто-нибудь знает, как это сделать? Чтобы привести пример, у меня есть SQL-сервер под названием MyDbServer, он имеет 4 базы данных,
- MyDatabase
- YourDatabse
- PrivateDatabase
- ReallyPrivateDb
Если вы подключаетесь через учетную запись, у которой есть только разрешения для «YourDatabse», вы все равно увидите список всех других баз данных, при попытках запроса будет предоставлено разрешение «выбрать», отклоненное или аналогичная ошибка.
В отношении резонов безопасности мы НЕ хотим, чтобы пользователи видели какие-либо базы данных, кроме тех, к которым они привязаны.