Классика баз данных - статьи

       

Средства контроля данных


Средства контроля данных позволяют пользователям контролировать доступ других пользователей к своим данным и осуществлять контроль целостности данных. Обеспечиваются также средства для группировки нескольких операторов в "транзакцию" и для аннулирования модификаций, сделаных в базе данных.

Так как SEQUEL позволяет любому пользователю создавать новые отношения и представления, на каждого пользователя ложится ответственность за контроль доступа к объектам данных, которые он создает. Когда пользователь создает отношение или представление, он и только он получает все права по выполнению действий над ним. (Если объект – это представление, права пользователя ограничиваются теми правами, которые он имеет для базового отношения.) Пользователь может предоставить доступ к своему отношению или представлению другим пользователям с помощью команды GRANT языка SEQUEL. Могут быть предоставлены следующие привилегии:

  • Read
  • Insert
  • Delete
  • Update (по столбцам)
  • Expand
  • Image (для определения образов на отношении)
  • Link (для создания линков на отношении)
  • Control (для задания утверждений целостности или определения триггеров, относящихся к данному отношению – объяснение приведено ниже).
  • Дополнительная привилегия RUN, которая применяется не к отношениям, а к программам, объясняется в следующем разделе.

    Кроме того, пользователь, передающий свои привилегии, может позволить пользователю, принимающему эти привилегии, передавать их другим пользователям, включив в оператор GRANT раздел WITH GRANT OPTION. Если некоторый обладает некоторой привиленией, но не имеет связанной с ней привилегии GRANT OPTION, то он может пользоваться основной привилегией, но не может передавать ее другим пользователям.

    С1. Дать следующие привилегии на таблице EMP Смиту и Андерсону: возможность читать, вставлять кортежи, модифицировать столбцы JOB и DNO и передавать эти возможности другим пользователям.

    GRANT READ, INSERT, UPDATE(JOB,DNO) ON EMP TO SMITH, ANDERSON WITH GRANT OPTION

    Вместо списка пользователей, которым должна быть передана привилегия, может использоваться ключевое слово PUBLIC, если эта привиления должна быть передана всем пользователям.

    Содержание  Назад  Вперед