Средства защиты данных
При работе в многопользовательском режиме особую актуальность приобретает защита данных от несанкционированного доступа. Существуют различные приемы управления доступом, обеспечивающие разный уровень безопасности.
Шифрование / дешифрование. Шифрование БД – это простейший способ защиты, при котором файл БД видоизменяется и становится недоступным для чтения с помощью стандартных служебных программ или текстовых редакторов. Шифрование незащищенной БД неэффективно, поскольку исходную БД можно открыть и получить полный доступ к ее объектам. Шифрование применяется при электронной передаче БД или сохранении ее на внешних носителях. Дешифрование БД – это операция, обратная шифрованию.
Отображение и скрытие объектов. Другим способом защиты является скрытие всей БД при просмотре каталогов средствами операционной системы или скрытие отдельных объектов БД при работе с БД средствами конкретной СУБД. Этот способ защиты не является достаточно надежным, поскольку скрытые объекты относительно просто можно отобразить.
Использование параметров запуска.
Способ позволяет задать стартовую форму, которая автоматически открывается при открытии БД. При этом можно скрыть окно БД и установить собственную кнопочную форму. Пользователь может выполнять с БД действия, которые допускает интерфейс.
Использование пароля. Простым способом защиты является установка пароля для открытия БД. При каждом открытии БД будет появляться диалоговое окно, в которое требуется ввести пароль. Может быть установлен единый пароль для всех пользователей, но наиболее гибким является способ, при котором пароль присваивается каждому пользователю. Для каждого пользователя могут быть определены объекты, доступ к которым он получает.
Запрещение репликации БД. Репликация позволяет пользователям создавать копию общей БД, которая может быть использована для нелегального распространения реплицированных данных.
Запрещение установки паролей и настройки параметров запуска пользователями. СУБД должна иметь механизмы, не позволяющие любым пользователям устанавливать пароль на БД, иначе ее невозможно будет открыть. Желательно иметь механизм установки запрета на изменение параметров запуска, определяющих настраиваемые меню, панели инструментов и стартовую форму.
При работе в многопользовательской среде большое значение приобретает понятие пользователь базы данных - владелец определенного набора объектов БД.
Пользователи системы могут быть разделены на классы. В системе любого размера всегда имеются суперпользователи– пользователи, которые автоматически имеют большинство (или все) привилегий и могут передать свой статус суперпользователя кому-нибудь с помощью привилегии или группы привилегий. Администратор базы данных (DBA) является термином, наиболее часто используемым для такого суперпользователя и для привилегий, которыми он обладает.
Других пользователей создают Администраторы баз данных. Они же дают им начальные привилегии. Создавать пользователей могут только администраторы. Давать права пользователям и отбирать их могут не только администраторы, но и другие пользователи, обладающие соответствующими правами.
Пользователи могут объединяться в группы.
Группа пользователей – это пользователи, наделенные одинаковым набором привилегий. Один и тот же пользователь может входить в разные группы. Каждый пользователь имеет специальное идентификационное имя или номер (Authorization ID).
Конкретные формы процесса управления пользователями в различных СУБД могут значительно отличаться друг от друга. Этот процесс в большой мере зависит от используемой операционной системы, архитектуры БД.
Процесс управления пользователями можно разбить на три главных этапа:
· сначала необходимо создать учетную запись пользователя в БД;
· далее пользователя необходимо наделить привилегиями сообразно задачам, которые пользователь будет решать в рамках БД;
· после того как доступ к данным пользователю будет уже не нужен, необходимо либо удалить из БД его учетную запись, либо отменить предоставленные ему привилегии.
Перед началом работы с БД пользователь должен быть идентифицирован с помощью процедуры входа, обычно включающей запрос имени и пароля пользователя. После входа запускается сеанс работы с СУБД.
С БД могут работать многие пользователи. Однако не всем пользователям следует разрешать выполнять любые действия. Поэтому пользователям предоставляются привилегии. Привилегия – это право пользователей на выполнение определенных операций над объектами некоторого типа.
Привилегии в разных литературных источниках классифицируются по-разному. Например, привилегии БД можно разделить на две категории:
· системные привилегии;
· объектные привилегии.
Системные привилегии контролируют общий доступ к БД. К ним относятся право создавать таблицы и другие объекты, а также право администрировать БД.
Объектные привилегии связаны с конкретным объектом БД. Объектная привилегия логически состоит из трех частей:
· объект, к которому применяется привилегия;
· разрешенные привилегией операции;
· пользователь, которому дана привилегия.
Одна из первых привилегий, которая должна быть определена, – это привилегия создателей таблиц. Если все пользователи будут иметь возможность создавать в системе базовые таблицы, это может привести к избыточности данных, их несогласованности и, как следствие, к неэффективности системы.
Пользователь, создавший таблицу, является ее владельцем. Это означает, что пользователь имеет все привилегии в созданной им таблице и может передавать привилегии в этой таблице другим пользователям.
Для пользователя таблицы могут быть назначены следующие привилегии:
· разрешение выполнять запросы в таблице;
· разрешение выполнять вставку новой строки в таблице;
· разрешение выполнять обновление значений полей в таблице;
· разрешение выполнять удаление записей в таблице;
· разрешение определить внешний ключ.
В конкретных СУБД могут поддерживаться привилегии, отличающиеся от привилегий, приведенных выше. Так, в некоторых СУБД имеется возможность задавать привилегию, позволяющую пользователям создавать индексы.
При отмене привилегий обычно действует подход, при котором привилегии отменяются тем пользователем, который их предоставил. Отмена будет каскадироваться, т. е. будет автоматически распространяться на всех пользователей, получивших эту привилегию от пользователя, для которого привилегия отменена.
Дата добавления: 2017-10-04; просмотров: 1464;