Под объектами базы данных понимаются: таблицы (можно регулировать доступ как к таблицам целиком, так и к отдельным столбцам таблиц), представления (view), хранимые процедуры и функции.
Название права
Применимость
Таблицы и представления
Столбцы
таблиц и
представлений
Хранимые процедуры и функции
SELECT – выборка (чтение) данных
+
+
–
INSERT – вставка новых строк в представление или таблицу
+
-
–
UPDATE – изменение данных
+
+
–
DELETE – удаление строк из таблицы или представления
+
–
–
REFERENCES – возможность ссылаться на указанный объект. Применительно к таблицам разрешает пользователю создавать внешние ключи, ссылающиеся на PRIMARY KEY или UNIQUE столбец этой таблицы.
Применительно к представлениям (view) позволяет связывать представление со схемами таблиц, на основе которых строится представление. Это позволяет отслеживать изменение структуры исходных таблиц, которые могут повлиять на работу представления
+
–
–
EXECUTE– выполнение хранимых процедур и функций
–
–
+
Предоставить права доступа к объектам БД позволяет команда
TOимена_объектов_системы_безопасности //через запятую login-ы, user-ы и имена ролей
[WITH GRANT OPTION] // для передачи своих прав другим пользователям командой GRANT
[AS {имя_роли | имя_группы_WinNT}] // имя роли, обладающей правом GRANT, от имени которой
// происходит передача прав.
Параметр permission – через запятую список доступных разрешений SELECT, INSERT, UPDATE и т.д. (из таблицы выше).
Например:
GRANT SELECT, INSERT
ON Materials
TO Engineer
WITH GRANT OPTION
Члены группы Engineer получают права на просмотр и добавление записей в таблицу Materials. Любой из пользователей группы Engineer впоследствии может передавать все или часть своих прав другим пользователям (в нашем примере пользователю с именем Liss):
GRANT SELECT, INSERT
ON Materials
TO Liss
AS Engineer
2. Права на выполнение команд Transact-SQL даются на следующие команды