Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемcsu.ac.ru
1 Защита информации в базах данных
2 Два подхода Два подхода к вопросу обеспечения безопасности данных: избирательный подход обязательный подход. В обоих подходах «объектом данных», для которых должна быть создана система безопасности, может быть как вся база данных целиком, так и любой объект внутри базы данных.
3 Избирательный подход В случае избирательного управления некоторый пользователь обладает различными правами (привилегиями или полномочиями) при работе с данными объектами.
4 Обязательный подход В случае обязательного управления, наоборот, каждому объекту данных присваивается некоторый классификационный уровень, а каждый пользователь обладает некоторым уровнем допуска.
5 реализация избирательного принципа Для реализации избирательного принципа предусмотрены следующие методы. В базу данных вводится новый тип объектов БД это пользователи. Каждому пользователю в БД присваивается уникальный идентификатор. Для дополнительной защиты каждый пользователь кроме уникального идентификатора снабжается уникальным паролем Пользователи могут быть объединены в специальные группы пользователей Один пользователь может входить в несколько групп. В стандарте вводится понятие группы PUBLIC, для которой должен быть определен минимальный стандартный набор прав.
6 Привелегии Привилегии или полномочия пользователей или групп это набор действий (операций), которые они могут выполнять над объектами БД.
7 Роли Роль это поименованный набор полномочий. Существует ряд стандартных ролей, которые определены в момент установки сервера баз данных. Имеется возможность создавать новые роли, группируя в них произвольные полномочия. Введение ролей не связано с конкретными пользователями, поэтому роли могут быть определены и сконфигурированы до того, как определены пользователи системы. Пользователю может быть назначена одна или несколько ролей.
8 Объекты БД, которые подлежат защите Объектами БД, которые подлежат защите, являются все объекты, хранимые в БД: таблицы, представления, хранимые процедуры, триггеры. Для каждого типа объектов есть свои действия, поэтому для каждого типа объектов могут быть определены разные права доступа.
9 Необходимо поддерживать два фундаментальных принципа: проверку полномочий и проверку подлинности (аутентификацию).
10 Проверка полномочий основана на том, что каждому пользователю или процессу информационной системы соответствует набор действий, которые он может выполнять по отношению к определенным объектам. Проверка подлинности означает достоверное подтверждение того, что пользователь или процесс, пытающийся выполнить санкционированное действие, действительно тот, за кого себя выдает.
11 СУБД в своих системных каталогах хранит как описание самих пользователей, так и описание их привилегий по отношению ко всем объектам.
12 схема предоставления полномочий Каждый объект в БД имеет владельца - пользователя, который создал данный объект. Владелец объекта обладает всеми правами- полномочиями на данный объект, в том числе он имеет право предоставлять другим пользователям полномочия по работе с данным объектом или забирать у пользователей ранее предоставленные полномочия.
13 Cоздание пользователя CREATE USER IDENTIFIED BY | EXTERNALLY DEFAULT TABLESPACE TEMPORARY TABLESPACE QUOTA { K | M ON tablespace } | UNLIMITED
14 SQL В стандарте SQL определены два оператора: GRANT и REVOKE соответственно предоставления и отмены привилегий.
15 Оператор предоставления привилегий GRANT { | ALL PRIVILEGES } ОN ТО { | PUBLIC } [WITH GRANT OPTION ]
16 Параметры Параметр ALL PRIVILEGES указывает, что разрешены все действия из допустимых для объектов данного типа. задает имя конкретного объекта: таблицы, представления, хранимой процедуры, триггера. или PUBLIC определяет, кому предоставляются данные привилегии. Параметр WITH GRANT OPTION является необязательным и определяет режим, при котором передаются не только права на указанные действия» но и право передавать эти права другим пользователям.
17 Пример User1 создал объект Таb, он является владельцем этого объекта и может передать права на работу с эти объектом другим пользователям. Пользователь user2 является оператором, который должен вводить данные в Таb(например, таблицу новых заказов) Пользователь user3 например, менеджером отдела, который должен регулярно про- сматривать введенные данные.
18 Действия для таблиц Для объекта типа таблица полным допустимым перечнем действий является набор из четырех операций: SELECT, INSERT. DELETE, UPDATE. При этом операция обновление может быть ограничена несколькими столбцами.
19 Оператор GRANT для таблицы GRANT { [SELECT] [,INSERT][,DELETE] [,UPDATE ( ] } ON ТО { | PUBLIC } [WITH GRANT OPTION ]
20 Раздача прав GRANT INSERT ON Tab TO user2 GRANT SELECT ON Tab TO user3
21 Например, менеджер может изменить цену товара в нашей таблице GRANT SELECT, UPDATE (COST) ON Tab TO user3
22 Отмена привелегий Для отмены ранее назначенных привилегий в стандарте SQL определен оператор REVOKE.
23 Параметры Параметры CASCADE или RESTRICT определяют, каким образом должна производиться отмена привилегий. Параметр CASCADE отменяет привилегии не только пользователя, который непосредственно упоминался в операторе GRANT при предоставлении ему привилегий, но и всем пользователям, которым этот пользователь присвоил привилегии, воспользовавшись парамегром WITH GRANT OPTION Параметр RESTRICT ограничивает отмену привилегий только пользователю, непосредственно упомянутому в операторе REVOKE.
24 Пример Отнимаем права на вставку данных REVOKE INSERT ON Tab TO user2, user4 CASCADE
25 Роли Создание роли CREATE ROLE Добавление привилегий в роль GRANT TO Выдача роли пользователю GRANT TO
26 Удаление роли DROP ROLE Удаление привилегий из роли REVOKE FROM Удаление роли у пользователя REVOKE FROM
27 PL/SQL PL/SQL позволяет вам вставлять, удалять, обновлять и извлекать данные ORACLE управлять потоком предложений для обработки этих данных. объявлять константы и переменные определять подпрограммы (процедуры и функции) перехватывать ошибки времени выполнения. Таким образом, PL/SQL комбинирует мощь манипулирования данными SQL с мощью обработки данных процедурных языков.
28 БЛОК PL/SQL блок PL/SQL имеет три части: декларативную часть, исполняемую часть часть обработки исключений. (ИСКЛЮЧЕНИЕМ в PL/SQL называется условие, вызывающее предупреждение или ошибку.) Исполняемая часть обязательна; две остальные части блока могут отсутствовать.
29 DECLARE Объявления BEGIN Выполняемые предложения EXCEPTION Обработчики исключений END;
30 программа обработки заказа на теннисные ракетки (из примера) DECLARE num_in_stock number(5); BEGIN SELECT quantity INTO qty_on_hand FROM inventory WHERE product = 'TENNIS RACKET' ; -- проверить количество IF qty_on_hand > 0 THEN UPDATE inventory SET quantity = quantity - 1 WHERE product = 'TENNIS RACKET'; INSERT INTO purcase_record VALUES ( 'Tennis racket purchased.', SYSDATE); ELSE INSERT INTO purcase_record VALUES ('Out of tennis rackets.', SYSDATE); END IF; COMMIT; END;
31 Объявления переменных Объявляемая переменная может иметь любой тип данных, присущий SQL, такой как NUMBER, CHAR и DATE Присваивания переменным Вы можете присваивать переменным значения двумя способами. Первый способ использует оператор присваивания := tax := price * tax_rate;
32 Присваивание значений Второй способ присвоить значение переменной - это извлечь в нее значение из базы данных посредством фразы INTO предложения SELECT SELECT sal * 0.10 INTO bonus FROM emp WHERE empno = emp_id;
33 Управляющие структуры Условное управление IF-THEN-ELSE IF acct_balance >= debit_amt THEN UPDATE accounts SET bal = bal - debit_amt WHERE account_id = acct; ELSE INSERT INTO temp VALUES (acct, acct_balance, 'Insufficient funds'); -- вставить счет, текущий баланс и сообщение END IF;
34 Итеративное управление LOOP -- поместите сюда последовательность предложений END LOOP;
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.