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

1288
pmb88

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

3
Я не уверен в этом, но, возможно, вы могли бы создать базу данных, которая содержит копию этих конкретных таблиц, и предоставить только разрешение на эту базу данных. Adjit 8 лет назад 0
Вы можете создать нового пользователя и назначить ему необходимые разрешения для этого клиента. Scorpion99 8 лет назад 0
Вы действительно имеете в виду ** «Настройте его так, чтобы пользователь мог видеть только таблицы, с которыми ему нужно работать в SSMS» ** или вы хотите ** разрешить им только ВЫБРАТЬ данные из таблиц, к которым у них есть доступ, независимо от того, имя базы данных, отображаемое в графическом интерфейсе SSMS **. Просмотр таблиц, как в именах таблиц в SSMS, и невозможность выбора данных из этих таблиц могут быть двумя разными вещами, поэтому я просто хочу быть уверен, что на всякий случай понятно, что вы спрашиваете. Pimp Juice IT 8 лет назад 0

2 ответа на вопрос

3
imtheman

Yes you can, like this:

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

Where [Permission] is SELECT, UPDATE, DELETE, or INSERT. You can also use DENY instead of GRANT to take permissions away.

Further reading: https://msdn.microsoft.com/en-us/library/ms188371.aspx

2
cybernard

In addition to imtheman's answer which is good, you can also do a create view command which only allows them to interact with the columns you wish them to see. All other column are not even present.

See this microsoft msdn article: https://msdn.microsoft.com/en-us/library/ms187956.aspx

Похожие вопросы