Функции защиты данных

Содержание

Слайд 2

1. Транзакции и параллелизм. Журнализация. Транзакцией называется некоторая неделимая последовательность опе-раций

1. Транзакции и параллелизм. Журнализация.

Транзакцией называется некоторая неделимая последовательность опе-раций

над данными БД, которая отслеживается СУБД от начала до завершения.
Если по каким-либо причинам (сбои и отказы в оборудовании, ошибки в ПО) транзакция остается незавершенной, то она отменяется.
Слайд 3

Основные свойства транзакции Атомарность – выполняются все входящие в транзакцию операции

Основные свойства транзакции

Атомарность – выполняются все входящие в транзакцию операции или

не выполняется ни одна операция.
Сериализуемость (или изоляция)– от-сутствует взаимное влияние выполня-емых в одно и то же время транзакций.
Долговечность – даже «крах» систе-мы не приводит к утрате результатов зафиксированной транзакции.
Слайд 4

Пример транзакции Пусть требуется осуществить опера-цию перевода денег с одного банков-ского

Пример транзакции

Пусть требуется осуществить опера-цию перевода денег с одного банков-ского

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

Контроль транзакций в многопользовательских СУБД В многопользовательских СУБД тран-закции могут быть

Контроль транзакций в многопользовательских СУБД

В многопользовательских СУБД тран-закции могут быть

запущены парал-лельно. Под сериализацией парал-лельно выполняемых транзакций по-нимают составление такого плана их выполнения (сериального плана), при котором суммарный эффект реализа-ции транзакций эквивалентен эффекту их последовательного выполнения.
Слайд 6

При параллельном выполнении смеси транзакций возможно воз-никновение конфликтов (блоки-ровок), разрешение которых

При параллельном выполнении смеси транзакций возможно воз-никновение конфликтов (блоки-ровок), разрешение

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

Команды языка SQL для выполнения транзакций В СУБД транзакция начинается с

Команды языка SQL для выполнения транзакций

В СУБД транзакция начинается с

оператора BEGIN. При этом если транзакция завершается опера-тором COMMIT, то результаты фиксируются во внешней памяти; при завершении транзакции опера-тором ROLLBACK результаты от-сутствуют во внешней памяти.
Слайд 8

Протокол доступа к данным В СУБД используют протокол доступа к данным,

Протокол доступа к данным

В СУБД используют протокол доступа к данным,

позволяющий избежать проблем параллелизма. Его суть за-ключается в следующем:
транзакция, результатом действий которой на кортеж является его извлечение, обязана наложить блокировку записи на этот кортеж;
Слайд 9

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

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

кортеж;
в случае, если запрашиваемая блокировка на кортеж отвергается из-за того, что на кортеж уже наложена блокировка, то транзакция переводится в режим ожидания до тех пор, пока блокировка не будет снята;
блокировка записей сохраняется вплоть до конца выполнения транзакции, то есть до выполнения операторов COMMIT или ROLLBACK.
Слайд 10

Ведение журнала изменений в БД Ведение журнала изменений в БД (журнализация

Ведение журнала изменений в БД

Ведение журнала изменений в БД (журнализация

изменений) выполняет-ся СУБД для обеспечения надежности хранения данных в базе при наличии аппаратных сбоев и отказов, а также ошибок в ПО.
Журнал СУБД – это особая БД или часть основной БД, непосредственно недоступная пользователю, и исполь-зуемая для записи информации обо всех изменениях БД.
Слайд 11

В различных СУБД в журнал могут вноситься записи, соответствующие изменениям и

В различных СУБД в журнал могут вноситься записи, соответствующие изменениям

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

2. Безопасность и целостность БД Под безопасностью БД понимают защиту БД

2. Безопасность и целостность БД

Под безопасностью БД понимают защиту БД

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

Основные методы обеспечения безопасности БД Шифрование прикладных программ и дан-ных. Защита

Основные методы обеспечения безопасности БД

Шифрование прикладных программ и дан-ных.
Защита паролем.
Поддержка уровней

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

Понятие целостности БД Целостность БД – это свойство БД, означающее, что

Понятие целостности БД

Целостность БД – это свойство БД, означающее, что

в ней содержится полная, непротиворечивая и адек-ватно отражающая предметную область информация.
Поддержание целостности БД включает проверку целостности и ее восстановление в случае обнаруже-ния противоречий в БД.
Слайд 15

Ограничения целостности Целостное состояние БД описывается с помощью ограничений целостности в

Ограничения целостности

Целостное состояние БД описывается с помощью ограничений целостности в

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

1. Ограничение целостности домена Этим ограничением определяется мно-жество значений, из которых

1. Ограничение целостности домена

Этим ограничением определяется мно-жество значений, из которых

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

2. Ограничение целостности атрибута Это фактически определение домена, из которого берутся

2. Ограничение целостности атрибута

Это фактически определение домена, из которого берутся

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

3. Ограничение целостности отношения Данное ограничение представляет со-бой правило, которое задается

3. Ограничение целостности отношения

Данное ограничение представляет со-бой правило, которое задается

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

4. Ограничение целостности БД Это ограничение задается для двух или более

4. Ограничение целостности БД

Это ограничение задается для двух или более

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

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

Следовательно, ограничение при-водит к тому, что отношения будут связаны между

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