- •Основные данные о работе
- •Содержание
- •Введение
- •Основная часть
- •1 Безопасность базы данных
- •2 Обеспечение безопасности внешних и внутренних серверов баз данных от направленных атак
- •3 Основные средства защиты Базы Данных
- •Заключение
- •Глоссарий
- •Список использованных источников
- •Список сокращений
- •Приложения
Основные данные о работе
Версия шаблона |
3.1 |
Вид работы |
Курсовая работа |
Название дисциплины |
Базы Данных |
Тема |
Безопасность базы данных |
Фамилия студента |
Табакаев |
Имя студента |
Артур |
Отчество студента |
Владимирович |
№ контракта |
1920012400601002 |
Содержание
Здесь разместите содержание.
Введение…………………………………………………….….3
1 Безопасность базы данных…………………………………..5
2 Обеспечение безопасности внешних и внутренних серверов баз данных от направленных атак ……………………………………………………10
Основные средства защиты Базы Данных…………………………..16
Заключение……………………………………………………..22
Глоссарий……………………………………………………….23
Список Использованных источников…………………………24
Список сокращений…………………………………………….25
Приложения……………………………………………………..26
Введение
Тема курсовой работы: «Безопасность базы данных».
Актуальность выбранной темы в том, что проблема обеспечения защиты информации считается одной из узловых проблем при построении надежной информационной структуры учреждения на базе ЭВМ.
В понятие «защиты базы данных» вводятся вопросы сохранения цельности данных и управления доступа к базам данным (санкционированность).
Эта проблема «Безопасность базы данных» охватывает как физическую защиту данных и системных программ, так и защиту от доступа к данным несанкционированного, передаваемым по линиям связи и отыскивающимся на накопителях, являющегося итогом работы, как посторонних лиц, так и специальных программ-вирусов. Технологический аспект проблемы «Безопасность базы данных» и обеспечения защиты связан с ограничением обновления определенных атрибутов с целью сохранения требуемых пропорций между их старыми и новыми значениями; ограничением, требующим сохранение значений поля показателя в некотором диапазоне; ограничением, связанным с заданными функциональными зависимостями.
Проблема обеспечения санкционированности использования данных считается неоднозначной, охватывает при этом вопросы защиты данных от нежелательной модификации или уничтожения, кроме того, от несанкционированного их чтения.
В данной работе изучены основные аспекты защиты баз данных, их реализация на примерах конкретных СУБД, а так же юридическая сторона данного вопроса.
Цель курсовой работы – изучить проблемы безопасности базы данных.
Задачи курсовой работы:
1. Изучить сущность понятия «Безопасность базы данных».
2. Изучить основные механизмы защиты ПК от НСД.
3. Определить пути Реализации защиты в некоторых СУБД.
Система будет считаться надежной, если она с использованием достаточных аппаратных и программных средств обеспечивает одновременную обработку информации разной степени секретности группой пользователей без нарушения прав доступа.
Основная часть
1 Безопасность базы данных
На сегодняшний день базы данных являются ключевыми компонентами большинства Вэб-приложений, позволяя предоставлять на сайтах динамический контент. Поскольку в таких Баз Данных может храниться очень деликатная или конфиденциальная информация, нужно очень серьезно относиться к защите базы данных.
Для извлекания или сохранения любых данных вам необходимо открыть соединение с базой данных, отправить корректный запрос, достать результат и закрыть соединение. В настоящее время наиболее распространенным стандартом общения является структурированный язык запросов (SQL). Всегда следует помнить о возможности атаки посредством SQL-запроса.
Несомненно, что сам по себе PHP не может взять под защиту вашу базу данных. В этом разделе документации описаны самые основы безопасного доступа и управления данными баз данных в PHP-скриптах.
Запомните простое правило: максимальная защита. Чем больше потенциально опасных участков системы вы проработаете, тем сложнее будет потенциальному взломщику получить доступ к базе данных или повредить ее. Хороший дизайн базы данных и программных приложений поможет вам справиться с вашими страхами.
Безопасность базы данных
Под безопасностью подразумевается, что некоторому пользователю разрешается выполнять некоторые действия.
Системы Управления Базами Данных должны соблюдать 3 основных аспекта информационной безопасности:
1. Конфиденциальность
2. Целостность
3. Доступность.
В этом посте мы поговорим конфиденциальности А) Управление безопасностью
В современных СУБД поддерживается как избирательный, так и обязательный подходы к обеспечению безопасности данных.
В случае избирательного управления, некий пользователь обладает различными правами, или привилегиями, и полномочиями при работе с различными объектами. Поскольку разные пользователи могут обладать различными правами доступа к одному и тому же объекту, такие системы очень эластичные.
В случае обязательного управления, каждому объекту присваивается некий квалификационный уровень, нетрудно заметить, что пользователю предоставляются права доступа к тому или другому уровню; и согласно, если у вас есть права доступа на какой-то уровень — все, что на этот уровень записано, ко всему у вас есть доступ. Считается, что такие системы жесткие, статичные, но они проще в управлении: легко всем объектам дать какой-либо номер (1,2,3,4…) и пользователю потом присвоить доступ кому до 5-го, кому до 6-го, кому до 7-го уровня и т.д. в порядке повышения приоритета.
В обычных Системах Управления базами данных для идентификации и проверки подлинности пользователя применяется либо подобающий механизм операционной системы, либо то, что имеется в SQL-операторе connect (там есть специальные параметры для доступа при подсоединении). В момент начала сеанса работы с сервером базы данных пользователь идентифицирует контакт, или логин, своим именем, а средством аутентификации служит пароль.
Идентификатор – это краткое имя, однозначно устанавливающее пользователя для Систем Управления Базами Данных. Является основой систем безопасности. Для пользователей создаются соответствующие учетные записи.
Идентификация позволяет субъекту (т.е. пользователю или процессу, функционирующему от имени пользователя) дать имя себя, т.е. сообщить свое имя (логин).
По средствам аутентификации (т.е. проверки подлинности) вторая сторона (операционная система или собственно.Cистемы Управления Базами Данных) убеждается, что субъект воистину тот, за кого он себя выдает.
Под авторизацией понимается служба, гарантирующая, что пользователю разрешен доступ к ресурсу. Эта служба устанавливает, имеет ли право аутентифицируемый клиент на использование того или иного объекта.
Для особо чувствительных систем (к примеру, банковским и т.п.) используются более сложные системы защиты. Так, к примеру, известны системы с последовательным созданием нескольких вопросов личного характера, с ограничением периода на их ответ и количества попыток (как в любом мобильном телефоне).
В стандарте ANSI ISO вместо термина «идентификатор пользователя» (user ID) применяется термин «идентификатор прав доступа» (authorization ID).
Система безопасности на сервере может находиться организована 3-мя способами:
1. нормальная безопасность: когда на сервер требуется отдельный доступ (т.е. в операционную систему вы входите с одним паролем, а на сервер базы данных с другим);
2. интегрированная безопасность (достаточно часто используют): входите в операционную систему с каким-то пользовательским паролем, и это же имя с этим же паролем зарегистрировано в СУБД. Второй раз входить не надо. Раз попал человек на сервер, ну да ладно, пусть пользуется всем, что есть.
3. смешанная система, которая позволяет входить и первым, и вторым способом. Б)Управление доступом как правило в Системах Управления Базами Данных применяется всякое управление доступом: когда владелец объекта (в крайнем случае, администратор базы данных, но чаще владелец) передает права доступа (permissions) кому-нибудь. При этом права могут представляться отдельным пользователям, группам пользователей, или ролям.
1. Учетная запись создается для отдельных пользователей с логином и паролем. Как правило, это делает администратор базы данных.
2. Группа – именованная база пользователей, чаще всего в группы связывают на основе какой-либо системы (по отделам, по комнатам, по бригадам и т.п.). Формально говоря, пользователь может входить в разные группы и входить в систему с разной возможностью (должен указать от имени какой группы он входит).
3. Роль – некий, часто служебный, перечень вероятностей. Например, бухгалтер, кладовщик и т.п. Приходит человек на работу, ему присваивают такие права доступа, и он с ними может входить. Такой вариант сейчас довольно хорошо употребляется, т.к. это достаточно удобно оговорить на предприятии. При желании можно пересмотреть эту роль, и она сразу всех потом поменяет. Как правило, считается, что привилегии роли имеют приоритет перед привилегиями групп.
Более высокие требования по безвредности в настоящее время мы рассматривать не будем. Такие многоуровневые системы безвредности были разработаны еще в 70х годах ХХ века. Известные фамилии: Bella, Lapadula.
B) Основные категории пользователей.В общем случае пользователи системами управления базами данных могут быть разбиты на 3 основные большие группы:
1. администратор сервера базы данных (и его помощники): ведают
установкой, конфигурированием сервера, регистрацией пользователей, групп,ролей, и т.д. Владеет всеми правами базы данных.
2. Администратор отдельной базы данных (сервер может обслуживать тысячи баз данных).
3.прочие конечные пользователи: программисты (создают программы для управления теми или иными процессами: бухгалтерскими, кадровыми…), работники фирм и т.д.
Как правило, для администраторов баз данных произведена первоначальная учетная запись, чтоб сделать первоначальный вход в систему. Например, в InterBase: SISDBA с masterkey. В SQL-server: SA и пустой пароль. В Oracle есть 3 изначальных учетных записи: SIS, SYSTEM и MANAGER.
Г) Виды привилегий
Фактическиих 2:
• привилегии безопасности: выделяются конкретному пользователю, создаются, как правило, команды типа create user. Но создать пользователя в базе данных – это не значит предоставить ему права на все. Просто он может войти в базу данных, но там ничего не увидеть. После создания ему еще надо дать права.
• привилегии доступа или права доступа (permissions): предоставляют созданному пользователю те или иные привилегии. Здесь используются другие 2 команды: Grant – предоставить право на что-то (чтение, добавление, удаление, изменение записи…), Revolce.
Каким образом реализуются или ограничиваются права доступа: • есть операционные ограничения – право на выполнение тех или иных операторов. Чаше всего это select, insert, delete и update. Во многих СУБД (в том числе Oracle) порядка 25 разных операционных прав можно предоставлять. • Ограничения по значениям, реализуемые с помощью механизма представлений (View). • Ограничения на ресурсы, реализуемые за счет привилегий доступа к базам данных. • Привилегии системного уровня (для Oracle). Когда пользователю разрешается выполнять до 80 различных операторов.
Совокупность всех привилегий, которыми можно обладать называется PUBLIC. Администратор базы данных по умолчанию имеет PUBLIC-права – права на все объекты и действия.
Д)Контрольные исследования Поскольку абсолютно неуязвимых систем не бывает, или, по крайней мере, в определенном смысле неуязвимых, то при работе с очень важными данными или при выполнении очень серьезных критических операций используют регистрацию каких-то действий (т.е. при выполнении какого-то действия автоматически записывается lok-файл, обычно это текстовый файл, его легко сделать через триггеры). Таким образом, если в этом файле более подробно все написать, то можно следить, кто когда что делал.
Е)Протоколирование и аудит Под протоколированием понимается сбор и накопление информации о событиях, происходящих в информационной системе. В том числе с помощью lok-файлов.
Под аудитом понимается анализ накопленной информации, проводимый либо оперативно (почти в реальном времени), либо периодически (раз в сутки, раз в неделю…).
Для чего используется протоколирование и аудит? Тут есть несколько основных целей: • Обеспечение подотчетности пользователей и администратора. За счет этого можно определить, кто куда обращался, и не появились ли у кого-нибудь непонятные права, не подглядел ли кто-нибудь пароль и т.д. • Для того, чтоб иметь возможность реконструировать последовательность событий. Какие-то нежелательные изменения – можно вернуть назад. • Обнаружение попыток нарушения информационной безопасности (взлома). • Выявление различных проблем в работе информационной системы (например, кому-то мало дали данных для работы, кому-то много)
Если говорить о СУБД Oracle, как о флагмане базостроения, там ведется 3 контрольных журнала: • Журнал привилегий (происходит отслеживание использования привилегий) • Журнал операторов (отслеживает, какие операторы используются часто для объектов, потом можно что-то превращать в процедуры, улучшать быстродействие, важный журнал) • Журнал объектного уровня (контролирует доступ к объектам)
