Права на доступ к объектам баз данных

 

Объекты базы данных:

• таблицы (tables),

• столбцы таблиц (columns),

• представления (views),

• хранимые процедуры (stored procedures).

 

 

Для различных объектов применяются разные наборы прав доступа к ним:

1) для таблицы или представления -

SELECT, INSERT, UPDATE, DELETE, DRI (Declarative Referential Integrity)

2) для конкретного столбца таблицы или представления –

SELECT, UPDATE

3) для хранимых процедур –

EXECUTE

4) для функций –

EXECUTE, DRI

 

 

SELECT. Разрешает выборку данных. Может выдаваться как на уровне таблицы, так и на уровне отдельного столбца.

 

INSERT. Это право позволяет вставлять в таблицу или представление новые строки. Как следствие, право INSERT может быть выдано только на уровне таблицы или представления и не может быть выдано на уровне столбца.

 

UPDATE. Это право выдается либо на уровне таблицы, что позволяет изменять все данные в таблице, либо на уровне отдельного столбца, что разрешает из­менять данные только в пределах конкретного столбца.

 

 

DELETE. Позволяет удалять строки из таблицы или представления. Может быть выдано только на уровне таблицы или представления и не может быть выдано на уровне столбца.

 

DRI (Declarative Referential Integrity). Возможность ссылаться на указанный объект. Для таблицы разрешает пользователю создавать внешние ключи, ссылающиеся на первичный ключ или уникальный столбец этой таблицы. Для представления право DRI позволяет связывать представление со схемами таблиц, на основе которых строится представление. Это позволяет отслеживать изменения структуры исходных таблиц, которые могут повлиять на работу представления.

 

EXECUTE. Разрешает выполнять хранимую процедуру или функцию. Естественно, кроме этого владелец хранимой процедуры может просматривать и изменять ее код.

 

 

 

 

 

 

Обычно не практикуется управление правами доступа на уровне конкретного столбца.

Если в таблице имеется один или более столбцов, доступ пользователей к которым необходимо ограничить, то в базе данных обычно создается представление (view), включающее только те столбцы исходной таблицы, доступ к которым должен быть разрешен.