Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Защита баз данных

Уязвимость баз данных

Проблема защиты баз данных стала актуальной в связи с широким внедрением многопользовательского сетевого доступа к СУБД.

Замечание 1

На ранних этапах развития несанкционированный доступ к БД был связан скорее с уязвимостями в физических и юридических уровнях защиты оборудования и ПО. Старые базы данных (dBase, FoxPro, Paradox и т.д.) представляли собой совокупность особым образом организованных файлов (файл-серверная архитектура). Получив доступ к компьютеру с БД и возможность копировать файлы, злоумышленник мог легко похитить данные.

Современные многопользовательские БД организуются по клиент-серверному принципу: программа-сервер обслуживает сетевые запросы программ-клиентов. Для копирования базы данных недостаточно получить права для работы с ней. Зачастую не представляется возможным выяснить даже физическое местоположение содержащих ее устройств и их структуру: запрашиваемые пользователем данные пересылаются по сети определенными порциями в соответствии с его полномочиями. Таким образом, сетевой доступ к БД не только дает возможность удаленной и коллективной работы с данными, но и обеспечивает дополнительную защиту за счет разграничения прав доступа.

Тем не менее, проблемы утечки и потери данных сохраняются. Ниже будут рассмотрены некоторые методы защиты БД от несанкционированного доступа и других уязвимостей.

Причины утечек данных. Автор24 — интернет-биржа студенческих работ

Рисунок 1. Причины утечек данных. Автор24 — интернет-биржа студенческих работ

Замечание 2

В данной статье не рассматриваются изолированные (встроенные) базы данных, а также однофайловые серверные БД типа SQLite, где защита обеспечивается внешними по отношению к ним средствами.

Методы защиты БД

К основным средствам защиты данных относят следующие:

  • вход по паролю: для начала работы с БД необходимо ввести определенную комбинацию символов;
  • разграничение прав доступа к объектам БД;
  • защита полей и строк таблиц БД;
  • шифрование данных.
«Защита баз данных» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

В современных БД чаще всего применяются методы, связанные с разграничением доступа. Например, могут предоставляться следующие права доступа к таблицам:

  • чтение данных;
  • редактирование данных;
  • добавление записей;
  • добавление, изменение и удаление данных;
  • изменение структуры таблицы.

Назначение полномочий пользователям на действия с таблицами.Автор24 — интернет-биржа студенческих работ

Рисунок 2. Назначение полномочий пользователям на действия с таблицами.Автор24 — интернет-биржа студенческих работ

Обычно СУБД дает возможность комбинировать права доступа, предоставляемые пользователям, объединять их в группы (роли). Практикуется также и обратный подход: объединение пользователей в группы и наделение их однотипными полномочиями.

Выше были перечислены проблемы и методы, связанные с защитой от несанкционированного доступа. Однако в отношении современных баз данных действуют и другие угрозы. Для их предотвращения в СУБД встраивают дополнительные средства:

  • повышение достоверности вводимых данных: с помощью ограничений, закладываемых при проектировании таблиц, а также масок ввода в формах предотвращается появление в БД некорректных записей, например, когда превышается количество дней в месяце (31 ноября), вводятся слишком большие или слишком малые значения, появляются незаполненные поля где это недопустимо и т.п.;
  • обеспечение целостности связей между таблицами: таблицы, как правило, включают в себя т.н. ключевые поля, благодаря чему становится невозможным в связанных таблицах появления ссылок на несуществующие записи; например, если в таблице "Покупатели" нет пользователя с идентификатором 123, то невозможным становится и внесение этого значения в соответствующее поле таблицы "Покупки";
  • резервное копирование: при наступлении обстоятельств непреодолимой силы (отключение электроэнергии, природные катастрофы) данные могут быть утрачены, поэтому следует регулярно копировать БД на внешние носители и удалённые хранилища; резервные копии рекомендуется хранить в зашифрованном виде; большинство современных СУБД предоставляет готовые механизмы резервного копирования;
  • правовые аспекты: БД могут являться объектами интеллектуальной собственности и авторских прав, поэтому следует своевременно регистрировать их в соответствующих государственных органах; хранение персональных данных в БД также регулируется законодательством;
  • компьютеры и операционные системы, на которых развернуты БД, также должны соответствовать правилам безопасности: сетевые данные должны передаваться по защищенным соединениям, пользователи - работать с ограниченными полномочиями, на ОС должны присутствовать антивирус и/или фаервол и т.п.

Примеры защиты БД

PHP, MySQL и РhpMyAdmin

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

Безопасность в рассматриваемой программе обеспечивается на нескольких уровнях. На первом защиту предоставляет сама система «phpMyAdmin»: для входа в панель управления требуется ввести логин и пароль. Далее уже сама СУБД MySQL разграничивает права доступа в соответствии с записями о пользователях и их полномочиях, а phpMyAdmin лишь сообщает о том, были ли удачными попытки произвести запросы к БД.

Microsoft Access

К данным, хранящимся в таблицах Microsoft Access, могут применяться следующие уровни доступа:

  • полный запрет доступа;
  • только чтение;
  • просмотр, ввод новых значений, удаление и изменение.

С этой точки зрения Microsoft Access соответствует стандартной концепции реляционных БД.

К формам и отчетам в Access применяют два метода защиты:

  • запрет вызова режима Конструктора (например, чтобы конечный пользователь случайно не повредил приложение);
  • защита отдельных элементов: например, некоторые поля исходной таблицы могут быть скрыты от пользователя.

В Microsoft Access предусмотрена также защита всего приложения общим паролем, а также хранение данных в оптимизированном виде (файле mde), в котором невозможно править формы, отчеты, структуру таблиц и другие характеристики БД.

Настройки безопасности Microsoft Access. Автор24 — интернет-биржа студенческих работ

Рисунок 3. Настройки безопасности Microsoft Access. Автор24 — интернет-биржа студенческих работ

Дата написания статьи: 31.01.2019
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot