Установка привилегий доступа пользователей в InterBase.

Защита статистических баз данных.

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

· Предотвращение выполнения запросов, работающих с незначительным количеством записей базы данных.

· Случайное добавление дополнительных строк к основному набору данных, обрабатываемому запросом. В результате ответ будет содержать определенную ошибку и позволит лишь оценить правильное значение.

· Использование для ответов на запросы только случайных наборов исходных данных.

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

Каждый созданный в среде SQL объект имеет своего владельца. Исходно владелец объекта является единственной персоной, которая знает о существовании данного объекта и имеет право выполнять с этим объектом любые операции. Привилегия доступа – это возможность определенного пользователя выполнять определенный вид действий над определенными таблицами базы данных. Привилегии доступа могут устанавливаться как системным администратором (пользователем с именем SYSDBA), так и пользователем, которому системный администратор предоставил такое право. Например для базы данных «БИБЛИОТЕКА» это пользователь с именем S.

По умолчанию доступ к таблицам, тригерам и хранимым процедурам имеет только тот пользователь, который их создал. Кроме того, системный администратор имеет доступ ко всем компонентам БД. Предоставление и отмена пользователям привилегий в SQL (в том числе СУБД InterBase) реализуется операторами GRAND и REVOKE соответственно.

 

В стандарте ISO определяется следующий набор привилегий:

· SELECT — право выбирать данные из таблицы;

· INSERT — право вставлять в таблицу новые строки;

· UPDATE — право изменять данные в таблице;

· DELETE — право удалять строки из таблицы;

· REFERENCES — право ссылаться на столбцы указанной таблицы в описаниях требований поддержки целостности данных;

· USAGE – право использовать домены, проверки, наборы символов и трансляции.