Автор работы: Пользователь скрыл имя, 10 Февраля 2012 в 13:18, контрольная работа
В данной работе я затрагиваю основные аспекты защиты баз данных, их реализацию на примерах конкретных СУБД, а так же юридическую сторону данного вопроса.
1. Введение
2. Защита информации
· Понятие защиты информации
· Защита ПК от несанкционированного доступа
· Защита информации в базах данных
3. Реализация защиты в некоторых СУБД
· Архитектура защиты Microsoft Access
· MS SQL Server
- Организация защиты
- Вопросы безопасности доступа
- Управление доступом
- Тип подключения к SQL Server
- Роли
· Безопасность данных в Oracle 7
- Ограничение доступа
- Использование пакетов
4. Юридическая защита авторских прав на базы данных
5. Заключение
6. Список использованной литературы
Поэтому корректным
будет следующее использование
оператора REVOKE:
REVOKE INSERT ON Tab!
TO user2.user4 CASCADE
При работе с
другими объектами изменяется список
операций, которые используются в операторах
GRANT и REVOKE.
По умолчанию
действие, соответствующее запуску
(исполнению) хранимой процедуры, назначается
всем членам группы PUBLIC.
Если вы хотите
изменить это условие, то после создания
хранимой процедуры необходимо записать
оператор REVOKE.
REVOKE EXECUTE ON COUNT_EX
TO PUBLIC CASCADE И теперь мы можем
назначить новые права
GRANT EXECUTE ON COUNT_EX TO
user4
Системный администратор
может разрешить некоторому пользователю
создавать и изменять таблицы в некоторой
БД. Тогда он может записать оператор предоставления
прав следующим образом:
GRANT CREATE TABLE. ALTER TABLE,
DROP TABLE ON OB_LIB TO user1
В этом случае пользователь
user1 может создавать, изменять или
удалять таблицы в БД DB_LIB, однако он
не может разрешить создавать или изменять
таблицы в этой БД другим пользователям,
потому что ему дано разрешение без права
делегирования своих возможностей.
В некоторых
СУБД пользователь может получить права
создавать БД. Например, в MS SQL Server системный
администратор может предоставить пользователю
main_user право на создание своей БД на данном
сервере. Это может быть сделано следующей
командой:
GRANT CREATE DATABASE
ON SERVERJ) TO main user
По принципу
иерархии пользователь main_user, создав свою
БД, теперь может предоставить права на
создание или изменение любых объектов
в этой БД другим пользователям. В СУБД,
которые поддерживают однобазовую архитектуру,
такие разрешения недопустимы. Например,
в СУБД Oracle на сервере создается только
одна БД, но пользователи могут работать
на уровне подсхемы (части таблиц БД и
связанных с ними объектов). Поэтому там
вводится понятие системных привилегий.
Их очень много, 80 различных привилегий.
Для того чтобы
разрешить пользователю создавать
объекты внутри этой БД, используется
понятие системной привилегии, которая
может быть назначена одному или нескольким
пользователям. Они выдаются только на
действия и конкретный тип объекта. Поэтому-
если вы, как системный администратор,
предоставили пользователю право создания
таблиц (CREATE TABLE), то для того чтобы он мог
создать триггер для таблицы, ему необходимо
предоставить еще одну системную привилегию
CREATE TRIGGER. Система защиты в Oracle считается
одной из самых мощных, но это имеет и обратную
сторону — она весьма сложная. Поэтому
задача администрирования в Oracle требует
хорошего знания как семантики принципов
поддержки прав доступа, так и физической
реализации этих возможностей.
Реализация защиты
в некоторых СУБД
Архитектура защиты
Access
Если у вас
имеется опыт работы с защитой, используемой
на сервере или большой ЭВМ, структура
защиты в Access покажется вам знакомой.
Вы можете указать пользователей, которым
предоставляется или, наоборот, не разрешается
доступ к объектам базы данных. Кроме
того, вы можете определить группы пользователей
и назначить разрешения на уровне группы,
чтобы облегчить построение защиты для
большого числа пользователей. Пользователю
достаточно быть членом группы, чтобы
получить права доступа, установленные
для неё.
Access хранит информацию
о защите в двух местах. Во
время установки программа
Общая структура
защиты Access отображена на рисунке 1. Учётные
записи пользователей и групп хранятся
в файле рабочей группы. Разрешение на
доступ к конкретным объектам сохраняются
в файле базы данных.
Рис. 1
Расположение
текущего файла рабочей группы хранится
в реестре Windows. Можно использовать
служебную программу Wrkadm.exe (администратор
рабочих групп) для изменения текущего
или определения нового файла рабочей
группы. Кроме того, можно выбирать нужный
файл рабочей группы во время выполнения
приложения, задав соответствующий параметр
командной строки в ярлыке запуска. Если
вам приходится часто запускать в сети
совместно используемое защищенное приложение,
нужно позаботиться о том, чтобы системный
администратор задал вашу рабочую группу,
используемую по умолчанию, как общий
файл в сетевой папке.
Каждая рабочая
группа имеет уникальный внутренний идентификатор,
генерируемый Access при определении файла
рабочих групп. Любая база данных, созданная
пользователем рабочей группы, «принадлежит»
как этому пользователю, так и рабочей
группе. Каждый пользователь и группа
также имеет уникальный внутренний идентификатор,
но можно дублировать один и тот же код
пользователя и группы в нескольких рабочих
группах. Когда вы назначаете право доступа
к объекту своей базы данных, Access сохраняет
в ней внутренний идентификатор пользователя
или группы вместе с информацией о доступе.
Таким образом, предоставленные вами права
перемещаются вместе с файлом базы данных
при копировании его в другую папку или
на другой компьютер.
MS SQL Server
Организация защиты
В критических для
бизнеса приложениях, когда сервер СУБД
должен быть постоянно доступен для клиентов,
большинство профилактических работ по
поддержке базы данных приходится выполнять
фактически в режиме on - line. MS SQL Server обладает
возможностями динамического резервного
копирования данных, т. е. даже когда эти
данные используются и изменяются клиентами.
В случае сбоя оборудования, отключения
питания и т. д. механизм автоматического
восстановления MS SQL Server восстанавливает
все базы данных до их последнего целостного
состояния без вмешательства администратора.
Все завершенные, но не отраженные в базе
транзакции из журнала транзакций применяются
к базе данных (это фактически то, что происходит
при событии chekpoint), а незавершенные транзакции,
т. е. те, которые были активными на момент
сбоя, вычищаются из журнала.
Говоря о симметричной
архитектуре, операции резервного копирования
и восстановления могут распараллеливаться
на несколько потоков и
DECLARE @tomorrow char(8)
SELECT @tomorrow = CONVERT(char(8),
DATEADD(dd, 1, GETDATE()) , 1)
DUMP DATABASE pubs
TO
DISK = '\\ntalexeysh\disk_d\sql_
WITH INIT, EXPIREDATE=@tomorrow, STATS
Для небольшой
базы данных ее журнал транзакций обычно
хранится на том же устройстве, что
и сама база, и архивируется вместе
с ней. Журналирование транзакций ведется
по принципу write-ahead, что означает, что любое
изменение сначала отражается в журнале
транзакций и лишь потом попадает собственно
в базу. В случае нахождения журнала транзакций
на отдельном устройстве существует возможность
отдельного резервного копирования журнала
транзакций. Как правило, резервное копирование
базы данных организуется с меньшей частотой,
чем журнала транзакций. Например, сохранение
журнала транзакций выполняется ежедневно,
а страховая копия всей базы может делаться
раз в неделю, так как архивирование журнала
транзакций происходит значительно быстрее
по времени и занимает меньше места, чем
дамп целой базы. В отличие от резервирования
базы данных дамп журнала транзакций очищает
его неактивную часть, т. е. все завершившиеся
(зафиксированные или абортированные)
с момента последнего дампа транзакции,
если только не использована опция NO_TRUNCATE.
Команда DUMP TRANSACTION TRUNCATE_ONLY, очищающая журнал
транзакций, полезна в случае его переполнения,
которое можно контролировать, например,
оператором DBCC SQLPERF (LOGSPACE). Если степень
переполнения журнала очень высока, можно
при его очистке отказаться от журналирования
факта самого этого события: DUMP TRANSACTION
NO_LOG. Если резервное копирование транзакций
не представляет интереса, можно включить
опцию очистки последних завершенных
транзакций в базе по наступлению события
checkpoint. Cмысл механизма checkpoint состоит в
периодической записи данных из кэша на
диск, чтобы не допускать грязных данных.
Такого рода события постоянно генерируются
MS SQL Server или возникают по инициативе пользователя.
Включенная опция truncate log on checkpoint гарантирует
выполнение с определенной частотой обработчиком
события действий, приблизительно эквивалентных
команде DUMP TRANSACTION TRUNCATE_ONLY.
При восстановлении
журнала транзакций соответствующие
транзакции применяются к базе данных.
Это означает, что если в начале недели
была сделана резервная копия всей базы,
а потом ежедневно архивировались транзакции
за каждый день, то при необходимости восстановления
поднимается состояние базы на начало
недели и на него последовательно накатываются
дампы журнала транзакций за все дни, предшествующие
моменту восстановления. MS SQL Server 6.5 имеет
возможность восстановления данных из
журнала транзакций на произвольный момент
времени (разумеется, отраженный в журнале)
при помощи команды LOAD TRANSACTION STOPAT <t>
или в окне database backup and restore выбором опции
until time. Все содержащиеся в этом дампе транзакции,
отмеченные завершившимися после этого
момента, будут откачены.
Возможность планирования
задач резервного копирования во
времени и отсылки сообщений по
e-mail в случае успешного/неуспешного завершения
рассматривалась нами при обсуждении
SQL Executive.
MS SQL Server 6.5 предусматривает
возможность зеркалирования
Transfer Manager используется
для экспорта/импорта объектов
и данных БД на MS SQL Server между
разными аппаратными
Вопросы безопасности
доступа
Говоря о преимуществах
интеграции с операционной системой,
MS SQL Server использует в своей работе
сервисы безопасности Windows NT. Напомним,
что Windows NT на сегодня сертифицирована
по классам безопасности С2/Е3. MS SQL Server
может быть настроен на работу в одном
из трех режимах безопасности. Интегрированный
режим предусматривает использование
механизмов аутентификации Windows NT для
обеспечения безопасности всех пользовательских
соединений. В этом случае к серверу разрешаются
только трастовые, или аутентифицирующие,
соединения (named pipes и multiprotocol). Администратор
имеет возможность отобразить группы
пользователей Windows NT на соответствующие
значения login id MS SQL Server при помощи утилиты
SQL Security Manager. В этом случае при входе на
MS SQL Server login name и пароль, переданные через
DB-Library или ODBC, игнорируются. Стандартный
режим безопасности предполагает, что
на MS SQL Server будут заводиться самостоятельные
login id и соответствующие им пароли. Смешанный
режим использует интегрированную модель
при установлении соединений по поименованным
каналам или мультипротоколу и стандартную
модель во всех остальных случаях.
Информация о работе Контрольная работа по "Средства и технологии Internet"