Это, вероятно, нет, но я хочу быть уверен. Клиент хочет подключиться к SQL Server 2008, который мы размещаем. Он будет получать доступ к таблице, чтобы выполнить пакет SSIS, чтобы скопировать некоторые данные из своей базы данных в нашу базу данных. Я беспокоюсь о безопасности. Теперь я прочитал некоторые сообщения о том, как ограничить пользователя, чтобы он мог видеть только одну базу данных. Однако я хочу спросить, можно ли это сделать для таблиц внутри базы данных. То есть можно ли настроить его так, чтобы пользователь мог видеть только те таблицы, с которыми ему нужно работать в Management Studio?
решение1
Да, можно, вот так:
GRANT [Permission] ON [SchemaName].[TableName] to [UserName]
Где [Permission]
находится SELECT
, UPDATE
, DELETE
, или INSERT
. Вы также можете использовать DENY
вместо , GRANT
чтобы отменить разрешения.
Дальнейшее чтение:https://msdn.microsoft.com/en-us/library/ms188371.aspx
решение2
В дополнение к ответу imtheman, который хорош, вы также можете сделатьсоздать видкоманда, которая позволяет им взаимодействовать только с теми столбцами, которые вы хотите, чтобы они видели. Все остальные столбцы даже не присутствуют.
См. эту статью Microsoft MSDN: https://msdn.microsoft.com/en-us/library/ms187956.aspx