Профтемы студенту и преподавателю
Taketop.ru
СТУДЕНТУ И ПРЕПОДАВАТЕЛЮ
лекции по дисциплинам
Информатика и вычислительная техника :: Разработка и эксплуатация удаленных баз данных
Управление доступом к данным
Имеется две команды SQL, посредством которых назначаются и отменяются привилегии и тем самым предоставляется возможность управления доступом к данным. С помощью этих команд (они перечислены ниже) в реляционных базах данных распределяются как привилегии доступа к системе, так и привилегии доступа к данным.
В DCL входят такие важные операторы, как GRANT и REVOKE. Данные операторы контролируют то, какие привилегии имеет пользователь в базе данных, например выбор строк, обновление таблиц, удаление данных, изменение структуры таблиц и т.д.
Привилегиями, или правами, называются действия, которые пользователь имеет право выполнять в отношении данной таблицы базы данных или представления. В стандарте SQL определяется следующий набор привилегий:
  • SELECT - право выбирать данные из таблицы;
  • INSERT - право вставлять в таблицу новые строки;
  • UPDATE - право изменять данные в таблице;
  • DELETE - право удалять строки из таблицы;
  • REFERENCES - право ссылаться на столбцы указанной таблицы в описаниях требований поддержки целостности данных;
  • USAGE - право использовать домены, проверки и наборы символов.

Оператор GRANT применяется для предоставления привилегий в отношении поименованных объектов базы данных указанным пользователям. Обычно его использует владелец таблицы с целью предоставления доступа к ней другим пользователям. Оператор GRANT имеет следующий формат:
<предоставление_привилегий>::=
GRANT {<привилегия>[,...n] |
ALL PRIVILEGES}
ON имя_объекта
TO {<идентификатор_пользователя>
[,...n]| PUBLIC}
[ WITH GRANT OPTION]
Отмена предоставленных пользователям привилегий
В языке SQL для отмены привилегий, предоставленных пользователям посредством оператора GRANT, используется оператор REVOKE. С помощью этого оператора могут быть отменены все или некоторые из привилегий, полученных указанным пользователем раньше. Оператор REVOKE имеет следующий формат:
<отмена_привилегий>::=
REVOKE[GRANT OPTION FOR]
{<привилегия>[,...n]
| ALL PRIVILEGES}
ON имя_объекта
FROM {<идентификатор_пользователя>
[,...n]| PUBLIC}
[RESTRICT | CASCADE]
Ключевое слово ALL PRIVILEGES означает, что для указанного пользователя отменяются все привилегии, предоставленные ему ранее тем пользователем, который ввел данный оператор.
д). Реализация прав на доступ к объектам баз данных в среде MS SQL Server
При подключении к SQL Server все возможные действия пользователей определяются правами (привилегиями, разрешениями), выданными их учетной записи, группе или роли, в которых они состоят.
Права можно разделить на три категории:
- права на доступ к объектам;
- права на выполнение команд;
- неявные права.
Для различных объектов базы данных (таблицы, столбцы таблиц, представления, хранимые процедуры) применяются разные наборы прав доступа к ним:
- SELECT, INSERT, UPDATE, DELETE, REFERENCES - для таблицы или представления;
- SELECT, UPDATE - для конкретного столбца таблицы или представления;
- EXECUTE - для хранимых процедур и функций.

Работы, представленные на сайте http://taketop.ru, предназначено исключительно для ознакомления. Все права в отношении работ и/или содержимого работ, представленных на сайте http://taketop.ru, принадлежат их законным правообладателям. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие или полученные в связи с использованием работ и/или содержимого работ, представленных на сайте http://taketop.ru
Рейтинг@Mail.ru
Сайт управляется SiNG cms © 2010-2015