Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Методы защиты баз данных: защита паролем, шифрование, разграничение прав доступа




Клиент/серверные системы: клиенты, серверы, клиентские приложения, серверы баз данных.

Наиболее эффективную работу с централизованной БД обеспечивает архитектура клиент/сервер. В отличие от системы удаленной обработки, в которой имеется только один компьютер, клиент/серверная система состоит из множества компьютеров, объединенных в сеть. Компьютеры называемые клиентами, занимаются обработкой прикладных программ. Компьютеры, называемые серверами, занимаются обработкой БД.

Тип компьютеров, используемых в качестве клиентов может быть разным, это могут быть большие ЭВМ или микрокомпьютеры. Однако, как правило, функции клиентов выполняют почти всегда ПК. В роли сервера может выступать компьютер любого типа, но по экономическим причинам функции сервера чаще всего также выполняют ПК, но имеющие более высокую производительность.

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

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

Распределенные СУБД. Двенадцать правил К.ДЕЙТА.

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

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

Информация о местоположении каждой из частей РаБД находится в так называемом глобальном словаре данных, который может храниться на одном из компьютеров сети или быть распределенным.

Американский ученый Крис Дейт сформулировал двенадцать правил, которым должна следовать РаБД:

1) локальная независимость;

2) отсутствие опоры на центральный узел (компьютер);

3) непрерывное функционирование;

4) независимость от расположения;

5) независимость от фрагментации;

6) независимость от репликации;

7) обработка распределенных запросов;

8) управление распределенными транзакциями;

9) аппаратная независимость;

 

10) независимость от операционной системы;

11) независимость от сети;

12) независимость от типа СУБД.

 

 

Методы защиты баз данных: защита паролем, шифрование, разграничение прав доступа.

К комплексу организационных мер относятся меры безопасности, реализуемые людьми. Можно выделить следующие группы организационных мер:

управление персоналом; физическая защита; поддержание работоспособности; реагирование на нарушения режима безопасности; планирование восстановительных работ

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

Для подтверждения подлинности пользователя существуют три последовательные процессы:

Идентификация -это процесс распознавания пользователя по его идентификатору (логин и пароль).

Аутентификация - это процесс под­тверждения достоверности идентификатора пользователя. Процесс может быть, например, реализована секретным выражением.

А вторизация - предоставление пользователю только тех данных, на которые он имеет право, т. е. разграничение прав доступа

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

База данных может быть зашифрована и храниться на диске в зашифрованном виде.

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

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

 

28. НОРМАЛИЗАЦИЯ ТАБЛИЦ Реляционная база данных считается эффективной, если она обладает приведенными ниже характеристиками. Минимизация избыточности данных. Минимальное использование отсутствующих значений Предотвращение потери информации. Если, например Минимизировать избыточность данных позволяет процесс, называемый нормализацией таблиц. Нормализацию можно было использовать для получения эффективных структур данных, созданных в результате преобразования ER-диаграмм в таблицы. Методику нормализации таблиц разработал американский ученый А.Ф. Кодд. Ее суть сводится к приведению таблиц к той или иной нормальной форме. Были выделены три нормальные формы - 1НФ. 2НФ. ЗНФ. Реляционная база данных считается эффективной, если все ее таблицы находятся как минимум в ЗНФ. Приведение к ЗНФ осуществляется, если есть основание для этого. Таблица находится в 1НФ. если все ее поля содержат только простые неделимые значения. Определение 2НФ Таблица находится в 2НФ. если она удовлетворяет требованиям 1НФ и неключевые поля функционально полно зависят от первичного ключа. Функциональная зависимость - это понятие, отображающее определенную семантическую связь между полями таблицы. Согласно этому правилу удалим поле фио и соц.положение. Оп ределение ЗНФ Таблица находится в ЗНФ. если она удовлетворяет требованиям 2НФ и не содержит транзитивных зависимостей. Транзитивной зависимостью называется функциональная зависимость между неключевыми полями. Нормализация приводит к фрагментации таблиц. 30. Процедуры логического проектирования Цель этапа логического проектирования - преобразование концептуальной модели на основе выбранной модели данных в логическую модель, не зависимую от особенностей используемой в дальнейшем СУБД для физической реализации базы данных. Для ее достижения выполняются следующие процедуры. 1.Выбор модели данных. Чаще всего выбирается реляционная модель данных в связи с наглядностью табличного представления данных и удобства работы с ними. 2.Определение набора таблиц исходя из ER-модели и их документирование. Для каждой сущности ER-модели создается таблица. Имя сущности - имя таблицы. Устанавливаются связи между таблицами посредством механизма первичных и внешних ключей. 3.Нормализация таблиц. Она заключается в приведении каждой из таблиц, по крайней мере, к ЗНФ. В результате нормализации получается очень гибкий проект базы данных, позволяющий легко вносить в нее нужные расширения. 4.Проверка логической модели данных на предмет возможности выполнения всех транзакций, предусмотренных пользователями. Транзакция - это набор действий, выполняемых отдельным пользователем или прикладной программой с целью изменения содержимого базы данных. Так. примером транзакции в проекте БАНКможет быть передача права распоряжаться счетами некоторого клиента другому' клиенту. 5.Определение требований поддержки целостности данных и их документирование. Эти требования представляют собой ограничения, которые вводятся с целью предотвратить помещение в базу данных противоречивых данных.. Должны быть рассмотрены следующие типы ограничений: -обязательные данные. Выясняется, есть ли атрибуты, которые не могут иметь Null-значений: -ограничения для значений атрибутов. Определяются допустимые значения для атрибутов; -целостность сущностей. Она достигается, если первичный ключ сущности не содержит Null-значений; -ссылочная целостность. Она понимается так. что значение внешнего ключа должно обязательно присутствовать в первичном ключе одной из строк таблицы для родительской сущности; -ограничения, накладываемые бизнес-правилами. Например, в случае с проектом БАНК может быть принято правило, запрещающее клиенту' распоряжаться. скажем, более чем тремя счетами. 6.Создание окончательного варианта логической модели данных и обсуждение его с пользователями* На этом шаге подготавливается окончательный вариант ER-модели. представляющей логическую модель данных.   45. Характеристика объектов базы данных. СУБД Access ориентирована на работу с объектами БД, к которым относятся таблицы, запросы, формы, отчеты, страницы, макросы и модули. Таблица - это основная структура, предназначенная для хранения информации в БД Запрос - это требование на: отбор данных, хранящихся в таблицах: выполнение вычислений над данными; изменения в БД. Форма - созданный на экране шаблон, используемый, главным образом, для ввода, просмотра и редактирования записей БД. Отчет - отображение на принтере или на экране информации из БД в виде, удобном для ее восприятия и анализа пользователем. Страница доступа к данным - диалоговая Web-страница. Макрос - есть последовательность макрокоманд для автоматизации выполнения операций в среде Access без программирования. Модуль - это программа для работы с БД. написанная на языке Visual Basic for Applications 6.0 (VBA). Все объекты, за исключением страниц доступа к данным, можно хранить в одном файле - файле БД с расширением .mdb. 49. Корректировка базы данных (каскадные операции). Для того чтобы преодолеть ограничения на удаление или изменение связанных записей, сохраняя при этом целостность данных, следует включить режимы каскадного обновления и каскадного удаления. При установленном флажке Каскадное обновление связанных полей изменение значения в ключевом поле главной таблицы приводит к автоматическому обновлению соответствующих значений во всех связанных записях. При установленном флажке Каскадное удаление связанных записей удаление записи в главной таблице приводит к автоматическому удалению связанных записей в подчиненной таблице. При установке опции Обеспечение целостности данных стали доступны опции Каскадное обновление связанных полей и Каскадное удаление связанных полей. При выборе этих опций, MS Access выполняет изменения в связанных таблицах таким образом, чтобы сохранить целостность данных, даже если вы изменяете значения ключевых полей или удаляете запись в главной таблице. К каскадным операциям относятся: 1.каскадное обновление связанных полей. Оно означает, что изменение значения ключа в записи главной таблицы должно приводить к автоматическому изменению значений внешнего ключа в подчиненных записях; 2.каскадное удаление связанных записей. Оно означает, что удаление записи из главной таблицы должно приводить к автоматическому удалению всех связанных записей. 53 Отчет с общими итогами, выч-ми, частными итогами. • так как в отчете нужны частные итоги, то включите еще и разделы "Заголовок группы" и "Примечание группы" по командеВид/Сортировка и группировка создайте в Области данных поле для расчета знач-я в каждой строке. Для этого вставьте свободное поле и в нем с помощью Построителя выражений введите выражение: = Nz([Материальная помощь])+Nz([Надбавка])+ Nz([Стипендия]) Введите текст надписи, связанной с этим полем, - Всего; выделите надписи всех полей в Области данных, вырежьте их в буфер обмена и вставьте в раздел "Верхний колонтитул"; • сконструируйте частные итоги: вставьте в раздел "Примечание группы" четыре свободных поля и удалите их надписи;  введите в эти поля, используя Построитель выражений, выражения для подсчета сумм начислений по их видам для каждой группы.Например: =Sum(Nz([Материальная помощь])) =Sum(Nz([Надбавка]))=Sum(Nz([Стипендия])) и выражение для подсчета общей суммы начислений для каждой группы:=Sum(Nz([Материальная помощь])+Nz([Надбавка])+ Nz([Стипендия])) вычисляемые поля расположите в строку под соответствующими полями раздела "Область данных"; • сконструируйте общий итог: вставьте четыре свободных поля в раздел "Примечание отчета" и удалите их надписи;  введите в эти поля выражения для подсчета сумм начислений по их видам для всех групп: =Sum(Nz([Материальная помощь]))=Sum(Nz([Надбавка])) =Sum(Nz([Стипендия])) и выражение для подсчета общей суммы начислений для всех групп: =Sum(Nz([Материальная помощь])+Nz([Надбавка])+ Nz([Стипендия]))   57. Структура команды SQL. Каждая команда SQL начинается с действия – ключевого слова или группы слов, описывающих выполняемую операцию. Например, INSERT (добавить), DELETE (удалить), COMMIT (завершить), CREATE TABLE (создать таблицу). После действия может следовать одно или несколько предложений. Предложение описывает данные, с которыми работает команда, или содержит уточняющую информацию о действии, выполняемом командой. Каждое предложение начинается с ключевого слова, такого как, например, WHERE (где), FROM (откуда), INTO (куда), HAVING (имеющий). Многие предложения содержат имена таблиц и полей БД; некоторые – константы и выражения. Имена таблиц, полей и пользователей должны содержать от 1 до 18 символов, начинаться с буквы и не содержать пробелов или специальных символов пунктуации. В качестве имен нельзя использовать ключевые слова SQL. 59. Возможности языка SQL по: определению данных, внесению изменений в базу данных, извлечению данных из базы. Формирование запросов на языке SQL должно осуществляться в строгом соответствии с форматом (правилом формирования) команды. К категории Описание данных относятся команды, позволяющие создавать, изменять и уничтожать БД и объекты БД. CREATE TABLE -Создает структуру таблицы DROP TABLE –удаляет таблицу ALTER TABLE –изменяет описание таблицы К категории Внесение изменений в БД относятся команды, позволяющие добавлять, удалять и модифицировать данные в таблицах. INSERT -Добавляет новые записи в таблицу DELETE-Удаляет записи из таблицы UPDATE -Обновляет данные таблицы Категория Извлечение данных состоит из одной команды SELECT, являющейся основной, наиболее часто используемой командой языка SQL. Эта команда применяется при формировании всех запросов выбора. SELECT -Извлекает данные из БД 63 Диалекты языка SQL в СУБД. Каждая из реализаций языка SQL в конкретной СУБД называется диалектом. Функции, которые добавляются к стандарту языка разработчиками коммерческих реализаций, принято называть расширениями. Выделяют три уровня соответствия стандарту— начальный, промежуточный и полный. В настоящее время не существует ни одного диалекта, полностью соответствующего стандарту. Производители СУБД применяют собственные реализации SQL, отвечающие как минимум начальному уровню соответствия стандарту и содержащие некоторые расширения, специфические для данной СУБД. Не существует двух совершенно идентичных диалектов. Более того, поскольку разработчики баз данных вводят в системы все новые функциональные средства, они постоянно расширяют свои диалекты языка SQL, в результате чего отдельные диалекты все больше и больше отличаются друг от друга. Это имеет свои достоинства и недостатки. Конкретная реализация языка, может включать в себя более широкие возможности по сравнению со стандартом SQL, например, больше типов данных, большее количество команд, больше дополнительных возможностей у имеющихся команд. Такие возможности делают работу с конкретной СУБД более эффективной. Кроме того, такие нестандартные возможности языка проходят практическую апробацию и со временем могут быть включены в стандарт. Недостаток в том, что различия в синтаксисе реализаций SQL затрудняют перенос приложений из одной системы в другую.   69. Функции клиентского приложения и сервера баз данных при обработке запросов. Преимущества клиент/серверной обработки. В архитектуре клиент/сервер функции клиентского приложения и серверной СУБД разделены. Функции клиентского приложения разбиваются на следующие группы: ввод-вывод данных (презентационная логика) – это часть кода клиентского приложения, которая определяет, что пользователь видит на экране, когда работает с приложением; бизнес-логика – это часть кода клиентского приложения, которая определяет алгоритм решения конкретных задач приложения; обработка данных внутри приложения (логика базы данных) – это часть кода клиентского приложения, которая связывает данные сервера с приложением. Преимущества. При клиент/серверной обработке уменьшается сетевой трафик, так как через сеть передаются только результаты запросов. Груз файловых операций ложится в основном на сервер, который мощнее компьютеров-клиентов и поэтому способен быстрее обслуживать запросы. Как следствие этого, уменьшается потребность клиентских приложений в оперативной памяти. Поскольку серверы способны хранить большое количество данных, то на компьютерах-клиентах освобождается значительный объем дискового пространства для других приложений. Повышается уровень непротиворечивости данных и существенно повышается степень безопасности БД, так как правила целостности данных определяются в серверной СУБД и являются едиными для всех приложений, использующих эту БД. Имеется возможность хранения бизнес-правил (например, правил ссылочной целостности или ограничений на значения данных) на сервере, что позволяет избежать дублирования кода в различных клиентских приложениях, использующих общую базу данных. 75. Типы интерфейса доступа к данным базы. Все серверные СУБД имеют клиентскую часть, которая обращается к БД посредством СУБД. Между клиентским приложением и СУБД не существует прямой связи и дополнительно встраиваются программные модули, позволяющие клиентскому приложению получать доступ к БД, создаваемым с помощью разных СУБД. Такие модули называются механизмами доступа к данным. Существует два основных способа доступа к данным из клиентских приложений: использование прикладного интерфейса и использование универсального программного интерфейса. Прикладной программный представляет собой набор функций, вызываемых из клиентского приложения. Он может работать только с СУБД данного производителя и при ее замене придется переписывать значительную часть кода клиентского приложения. Прикладной программный интерфейс различен для разных СУБД. Универсальный механизм доступа к данным обеспечивает возможность использования одного и того же интерфейса для доступа к разным типам СУБД. Обычно он реализован в виде специальных дополнительных модулей, называемых драйверами. Наиболее распространенным программным интерфейсом, обеспечивающим доступ к данным конкретной базы данных является ODBC. В рамках ODBC программное приложение непосредственно взаимодействует с диспетчером драйвером, посылая ему ODBC-вызовы. С его помощью могут быть заданы: · пользовательский DSN – источник данных, доступный только текущему пользователю на текущем компьютере; · файловый DSN – источник данных, которые могут применять совместно различные пользователи, у которых установлены одинаковые ODBC-драйверы; · системный DSN – источник данных, доступный всем пользователям и службам текущего компьютера.     80 Восстановление и хранение БД Восстановление базы данных осуществляется в случае ее физического повреждения или нарушения целостности. В число часто используемых средств восстановления базы данных входят резервное копирование и журнал изменений базы данных. При осуществлении резервного копирования базы данных необходимо выполнять следующие требования: - копия создается в момент, когда состояние базы данных является целостным; - копия создается на иных внешних устройствах, чем то, на котором располагается сама база. Это вызвано тем, что в случае выхода из строя этого устройства восстановить базу данных будет невозможно Журнал изменений базы данных – это особая часть базы данных, недоступная пользователям СУБД, в которую поступают записи обо всех изменениях основной части базы данных. Для эффективной реализации функции ведения журнала изменений базы данных необходимо обеспечить повышенную надежность хранения и поддержания в рабочем состоянии самого журнала. В большинстве современных реляционных СУБД журнал изменений называется журналом транзакций. В нем регистрируются в хронологическом порядке все изменения, вносимые в базу данных каждой транзакцией.   31. Процедуры физического проектирования Цель этапа физического проектирования - описание конкретной реализации базы данных, размещаемой во внешней памяти компьютера. Это описание структуры хранения данных и эффективных методов доступа к данным базы. при физическом - выбирается способ, как это сделать. Процедуры физического проектирования следующие. -Проектирование таблиц базы данных средствами выбранной СУБД. Осуществляется выбор реляционной СУБД, которая будет использоваться для создания базы данных, размещаемой на машинных носителях. Глубоко изучаются ее функциональные возможности по проектированию таблиц. Затем выполняется проектирование таблиц и схемы их связи в среде СУБД. Подготовленный проект базы данных описывается в сопровождаемой документации. --Реализация бизнес-правил в среде выбранной СУБД. Обновление информации в таблицах может быть ограничено бизнес-правилами. Способ их реализации зависит от выбранной СУБД. Одни системы для реализации требований предметной области предлагают больше возможностей, другие – меньше. -Проектирование физической организации базы данных. На этом шаге выбирается наилучшая файловая организация для таблиц. Выявляются транзакции, которые будут выполняться в проектируемой базе данных, и выделяются наиболее важные из них. Анализируется пропускная способность транзакций - количество транзакций, которые могут быть обработаны за заданный интервал времени, и время ответа - промежуток времени, необходимый для выполнения одной транзакции. Стремятся к повышению пропускной способности транзакций и уменьшению времени ответа. -Разработка стратегии защиты базы данных. База данных представляет собой ценный корпоративный ресурс, и организации ее защиты уделяется большое внимание. Для этого проектировщики должны иметь полное и ясное представление обо всех средствах защиты, предоставляемых выбранной СУБД. -Организация мониторинга функционирования базы данных и ее настройка. После создания физического проекта базы данных организуется непрерывное слежение за ее функционированием. Полученные сведения об уровне производительности базы данных используются для ее настройки. Для этого привлекаются и средства выбранной СУБД. 32Семантическая объектная модель
Семантическая объектная модельиспользуется для моделирования данных. Команда разработчиков опрашивает пользователей, анализирует предоставленные ими отчеты, формы и запросы и на их основе строит пользовательскую модель данных. Эта модель данных в дальнейшем воплощается в структуре базы данных. В случае использования семантической модели объектной модели конструируемая модель будет содержать семантические объекты и связанные с ними конструкции.. Слово семантический означает смысловой. Семантический объект – это именованная совокупность атрибутов, которая в достаточной степени описывает отдельный феномен. Подобно сущностям, семантические объекты группируются в классы. У объектного класса есть имя, которое отличает его от других классов и соответствует именам вещей, представляемых этим классом. Подобно сущностям объект имеет набор атрибутов. Каждый атрибут описывает одну из характеристик представляемого феномена. Объекты представляют отдельные феномены, то есть в восприятии пользователей они являются чем–то независимым и самостоятельным, что требует учета. Феномены – это сущности, информация о которых необходима. Семантические объекты имеют атрибуты, описывающие их характеристики. Есть три типа атрибутов. Простые атрибуты состоят из одного элемента. Групповые атрибуты являют собой совокупности атрибутов. Семантические объектные атрибуты – это атрибуты, которые устанавливают связь между двумя семантическими объектами.




Поделиться с друзьями:


Дата добавления: 2016-04-03; Мы поможем в написании ваших работ!; просмотров: 644 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Слабые люди всю жизнь стараются быть не хуже других. Сильным во что бы то ни стало нужно стать лучше всех. © Борис Акунин
==> читать все изречения...

2193 - | 2115 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.