Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 800353

.pdf
Скачиваний:
1
Добавлен:
01.05.2022
Размер:
1.88 Mб
Скачать

Впоследние годы существенно возросла общая озабоченность по поводу сохранения неприкосновенности личных данных. Эта озабоченность вызвана и связана в основном с разработкой новых компьютерных технологий, появившихся в результате быстрого роста объема сохраняемых в компьютерах данных и предусматривающих определенные изменения в методах хранения и использования информации. Многие из этих методов включают обмен или совместную обработку информации, поступающей из различных компьютерных систем (возможно, даже расположенных в различных странах), и далеко не всегда регулируются каким-либо законодательством.

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

Защита личных данных - законодательство,

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

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

160

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

В общем случае, как в Северной Америке, так и в Европе, действующее законодательство представляет отдельным лицам некоторый набор основных прав например, право знать, что их данные собираются и хранятся, а также право требовать изменения некорректных сведений. Безусловно, существуют и исключения например, области, связанные с проблемами национальной безопасности, или случаи, когда разглашение сведений может помешать проведению юридических расследований. Кроме того, существуют отличия и между национальными законодательствами. Например, в некоторых случаях законодательство определяет отношение к любым данным, как собираемым вручную, так и накапливаемым в компьютерах, или же имеет несколько различных вариантов в административных единицах федеральных государств например, в Германии и США. Как бы там ни было, в связи с продолжающимся ростом обмена данными между отдельными странами и необходимостью защиты этих данных от недобросовестного использования потребуется дальнейшее согласование основных юридических положений в этой области юриспруденции.

Резюме

Защита баз данных предусматривает предотвращение любых преднамеренных и непреднамеренных угроз с использованием компьютерных и некомпьютерных средств контроля.

Защите подлежат не только собственно данные, сохраняемые в базе. Нарушения защиты могут повлиять на другие части системы, в результате чего пострадает и сама база данных. Поэтому защита баз данных охватывает

161

оборудование, программное обеспечение, персонал и собственно данные.

Целью организации защиты базы данных является предотвращение таких нарушений, как похищение и фальсификация, утрата конфиденциальности (тайности), нарушение неприкосновенности личных данных, утрата целостности данных и потеря доступности данных.

Угрозой считается любая ситуация или событие, как внутреннее, так и внешнее, которое способно нежелательным образом воздействовать на систему, а значит, и на всю организацию в целом.

Компьютерные средства контроля в

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

Авторизация пользователей заключается в предоставлении им необходимых прав (или привилегий), позволяющих их владельцу получать санкционированный доступ к системе или ее объектам.

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

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

162

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

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

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

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

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

статистической

базе

данных

должны

сохраняться

 

 

163

 

 

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

Неприкосновенность личных данных определяет право каждого человека на защиту его личных данных от сбора, хранения и опубликования (как в отношении лично его, так и неперсонально, в общем потоке).

Защита личных данных состоит в защите личных данных каждого человека от незаконного сбора, хранения и опубликования, а также в предоставлении необходимых гарантий недопустимости уничтожения или искажения данных, сохраняемых с разрешения закона.

164

6. СРЕДСТВА ПОДДЕРЖАНИЯ ЦЕЛОСТНОСТИ БАЗЫ ДАННЫХ

6.1 Основные понятия. Транзакции и их свойства

СУБД должна иметь доступный конечному пользователю системный каталог или словарь данных.

СЛОВАРЬ (СИСТЕМНЫЙ КАТАЛОГ) – это хранилище данных, которые описывают сохраняемую в базе данных информацию, т.е. метаданные, или «данные о данных»

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

имена пользователей, для которых разрешен доступ к базе данных;

имена элементов данных в базе данных элементы данных, к которым каждый пользователь

имеет право доступа, и разрешенные типы доступа к ним – для вставки, обновления, удаления или чтения.

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

имена элементов данных из базы данных типы и размеры элементов данных

ограничения, установленные для каждого из элементов

165

Термин «словарь данных» часто используется для программного обеспечения более общего типа, чем просто каталог СУБД. Система словаря данных может быть либо активной, либо пассивной. Активная система всегда согласуется со структурой базы данных, поскольку она автоматически поддерживается этой системой. Пассивная система может противоречить состоянию базы данных из-за инициируемых пользователями изменений. Если словарь данных является частью базы данных, то он называется

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

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

Стандарты IRDS определяют набор правил хранения информации в словаре данных и доступа к ней, преследуя при этом три следующих цели:

расширяемость данных; целостность данных; контролируемый доступ к данным.

166

Требования поддержки целостности данных

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

Обязательные данные. Необходимо установить, какие из атрибутов должны содержать одно из допустимых значений. другими словами, нас интересуют атрибуты, которые всегда должны иметь конкретные значения, отличные от NUUL.

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

Целостность сущностей. Атрибут первичного ключа сущности не может иметь значение NULL.

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

Для каждого внешнего ключа отношения следует указать условия, которые должны выполняться при обновлении или удалении соответствующего значения первичного ключа.

167

Требования данного предприятия. Эти требования иначе называются бизнес-правилами и определяются теми методами и ограничениями, которые приняты на данном предприятии в отношении выполнения некоторых операций.

Документирование всех ограничений целостности данных. Все установленные требования поддержки целостности данных для локальной модели должны быть детально отображены в документации.

Механизм транзакций

Все современные СУБД имеют средства для выполнения трех важнейших функций:

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

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

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

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

Любая транзакция всегда должна переводить БД из одного согласованного состояния в другое, хотя допускается,

168

что согласованность состояния БД нарушается в ходе выполнения транзакции.

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

Никакая СУБД не обладает внутренней возможностью установить, какие именно изменения должны быть восприняты как единое целое, образующие одну логическую транзакцию. Следовательно, должен существовать метод, позволяющий указывать границы каждой из транзакций извне, со стороны пользователя. В большинстве языков манипулирования данными для указания границ отдельных транзакций используются операторы Begin Transaction, Commit и RollBack (или их эквиваленты).

Свойства транзакций

Существуют некоторые свойства, которыми должна обладать любая из транзакций:

Атомарность – любая транзакция представляет собой неделимую единицу работы, которая может быть либо выполнена вся целиком, либо не выполнена вовсе.

Согласованность – каждая транзакция должна переводить БД из одного согласованного состояния в другое согласованное состояние.

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

169