Настройка доступа к одному столу

Настройка доступа к одному столу

Я только что настроил доступ для пользователя SQL-сервера к одной таблице. Я сделал это, дав пользователю роль db_datareader. Затем я установил разрешения для всех таблиц, к которым я не хотел, чтобы этот пользователь имел доступ, установив все флажки в столбце DENY для каждой таблицы.

Это сработало, но потребовало много нажатия кнопок.

Есть ли более короткий и простой способ сделать это?

решение1

ДА! Вы сделали все с точностью до наоборот. Удалите пользователя из роли чтения данных (которая, как вы обнаружили, предоставляет права на выборку для всей базы данных) и предоставьте права на выборку только для этой одной таблицы.

USE MyDB
GRANT SELECT ON dbo.MyTable to JoeUser

Или в SQL Server Management Studio

  1. Щелкните правой кнопкой мыши по таблице и получите свойства.
  2. Нажмите «Разрешения» в меню слева.
  3. Нажмите «Поиск» и найдите своего пользователя.
  4. Поставьте галочку в столбце «Грант» в строке «Выбрать».

Связанный контент