TSQL для просмотра, добавления и удаления разрешений - PullRequest
0 голосов
/ 10 марта 2009

Я создал несколько новых таблиц в новой базе данных (Microsoft SQL Server 2005). Теперь эти таблицы готовы для просмотра клиентскими пользователями через Access 2003 с использованием объекта ODBC System DSN (с проверкой подлинности SQL). Я только создал роль и схему в базе данных, а также пользователя для входа в систему по умолчанию для моего сервера SQL с моей базой данных и именем схемы.

Проблема в том, что клиенты могут видеть не только созданные мной таблицы, но и объекты системного просмотра в базе данных. Я не уверен, что мне следует сделать, чтобы настроить пользователя для входа в SQL, схему и роль, чтобы были видны только мои таблицы? Не уверен, почему объекты системного представления по умолчанию видны входящим пользователям.

Еще один альтернативный способ очистки разрешений, которые у меня есть прямо сейчас. Я проверил некоторые объекты системного представления (очень длинный список). Все они имеют разрешение на схему, которую я создал, с общедоступной схемой. Есть ли способ с помощью сценария T-SQL для просмотра, а затем удалить разрешение, связанное с моей схемой для этих объектов системного представления? После этого мне нужно использовать похожие сценарии, чтобы добавить разрешение с моей схемой к таблицам, которые я создал.

1 Ответ

1 голос
/ 11 марта 2009

Ну, по умолчанию, новый пользователь также будет членом "публичного" сервера и роли базы данных. Объекты в сис. и схемы INFORMATION_SCHEMA видны членам публичной роли.

Вы можете либо явно запретить вашей собственной роли доступ к этим схемам, либо вы можете удалить публичную роль у вашего логина.

Марк

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...