SQL: ограничить просмотр таблиц в базе данных

Это, вероятно, нет, но я хочу быть уверен. Клиент хочет подключиться к SQL Server 2008, который мы размещаем. Они получат доступ к таблице для выполнения пакета служб SSIS, чтобы скопировать некоторые данные из своей базы данных в нашу базу данных. Я беспокоюсь о безопасности. Теперь я прочитал некоторые сообщения о том, как ограничить пользователя, чтобы видеть только одну базу данных. Однако я хочу спросить, можно ли это сделать для таблиц в базе данных. То есть вы можете установить его так, чтобы пользователь мог видеть только те таблицы, с которыми ему нужно работать, в Management Studio?

2 ответа

Да, вы можете, как это:

GRANT [Permission] ON [SchemaName].[TableName] to [UserName]

куда [Permission] является SELECT, UPDATE, DELETE, или же INSERT, Вы также можете использовать DENY вместо GRANT забрать разрешения.

Дополнительная информация: https://msdn.microsoft.com/en-us/library/ms188371.aspx

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

См. Эту статью Microsoft MSDN: https://msdn.microsoft.com/en-us/library/ms187956.aspx

Другие вопросы по тегам