Реферат: Защита баз данных

<img src="/cache/referats/21107/image001.gif" v:shapes=«Lock»> 

<span Arial",«sans-serif»; color:black;mso-ansi-language:EN-US">Protection of                   databases

<span Garamond",«serif»;mso-ansi-language:EN-US">

<span Garamond",«serif»; mso-ansi-language:EN-US">

<span Garamond",«serif»; mso-ansi-language:EN-US">

<span Garamond",«serif»; mso-ansi-language:EN-US">

<span Garamond",«serif»; mso-ansi-language:EN-US">

<span Garamond",«serif»">Содержание

<span Garamond",«serif»;mso-ansi-language: EN-US">

                                              

<span Garamond",«serif»;mso-ansi-language:EN-US;font-weight:normal">1.

<span Garamond",«serif»;font-weight:normal">Введение                                                        

<span Garamond",«serif»; mso-ansi-language:EN-US">

<span Garamond",«serif»">2.Защита информации

                           

·<span Times New Roman"">  

<span Garamond",«serif»">Понятие защитыинформации

·<span Times New Roman"">  

<span Garamond",«serif»">Защита ПК отнесанкционированного доступа                   

·<span Times New Roman"">  

<span Garamond",«serif»">Защита информации вбазах данных

<span Garamond",«serif»">

<span Garamond",«serif»">3.Реализация защиты в некоторых СУБД        

<span Garamond",«serif»">

·<span Times New Roman"">  

<span Garamond",«serif»">Архитектура защиты <span Garamond",«serif»;mso-ansi-language: EN-US">Microsoft Access<span Garamond",«serif»">               <span Garamond",«serif»">

·<span Times New Roman"">  

<span Garamond",«serif»;mso-ansi-language: EN-US">MS SQL Server<span Garamond",«serif»">

<span Garamond",«serif»;mso-fareast-font-family: Garamond;mso-bidi-font-family:Garamond">-<span Times New Roman"">        

<span Garamond",«serif»">Организациязащиты

<span Garamond",«serif»;mso-fareast-font-family: Garamond;mso-bidi-font-family:Garamond">-<span Times New Roman"">        

<span Garamond",«serif»">Вопросыбезопасности доступа

<span Garamond",«serif»;mso-fareast-font-family: Garamond;mso-bidi-font-family:Garamond">-<span Times New Roman"">        

<span Garamond",«serif»">Управлениедоступом

<span Garamond",«serif»;mso-fareast-font-family: Garamond;mso-bidi-font-family:Garamond">-<span Times New Roman"">        

<span Garamond",«serif»">Типподключения к <span Garamond",«serif»; mso-ansi-language:EN-US">SQL Server<span Garamond",«serif»">

<span Garamond",«serif»;mso-fareast-font-family: Garamond;mso-bidi-font-family:Garamond">-<span Times New Roman"">        

<span Garamond",«serif»">Роли

·<span Times New Roman"">  

<span Garamond",«serif»">Безопасность данных в <span Garamond",«serif»;mso-ansi-language: EN-US">Oracle 7<span Garamond",«serif»">

<span Garamond",«serif»">-    Ограничение доступа

<span Garamond",«serif»">-    Использование пакетов

<span Garamond",«serif»">

<span Garamond",«serif»">4.Юридическая защита авторских прав на базы данных

<span Garamond",«serif»">

<span Garamond",«serif»">5.Заключение

<span Garamond",«serif»">

<span Garamond",«serif»">6.Список использованной литературы    

         <span Garamond",«serif»">

<span Garamond",«serif»">                                      

Введение

<span Courier New"">

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

·<span Times New Roman"">    

обеспечиватьполучение общих и/или детализированных отчетов по итогам работы;

·<span Times New Roman"">    

позволять легкоопределять тенденции изменения важнейших показателей;

·<span Times New Roman"">    

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

·<span Times New Roman"">    

выполнять точныйи полный анализ данных.

Современные СУБД в основном являются приложениями Windows, так как данная среда позволяет более полноиспользовать возможности персональной ЭВМ, нежели среда DOS. Снижение стоимости высокопроизводительных ПКобусловил не только широкий переход к среде Windows, где разработчик программного обеспечения может вменьше степени заботиться о распределении ресурсов, но также сделал программноеобеспечение ПК в целом и СУБД в частности менее критичными к аппаратнымресурсам ЭВМ. Среди наиболее ярких представителей систем управления базамиданных можно отметить: LotusApproach, MicrosoftAccess, BorlanddBase, BorlandParadox, MicrosoftVisualFoxPro, MicrosoftVisualBasic, а также баз данных MicrosoftSQLServerи Oracle, используемые в приложениях, построенных потехнологии «клиент-сервер».

<span Times New Roman",«serif»">

<span Times New Roman",«serif»">Проблемаобеспечения  защиты  информации является одной из важнейших припостроении надежной информационной структуры учреждения на  базе ЭВМ. Этапроблема охватывает как физическую защиту данных и системных программ, так изащиту от несанкционированного доступа  к данным,передаваемым  по  линиям связи  и находящимся нанакопителях, являющегося результатом деятельности как посторонних лиц, так испециальных программ-вирусов. Таким образом, в понятие защиты данных включаютсявопросы сохранения целостности данных и управления  доступа к данным  (санкционированность).

<span Times New Roman",«serif»">

<span Times New Roman",«serif»">Технологическийаспект данного вопроса связан с различными видами  ограничений, которые поддерживаютсяструктурой СУБД и должны быть доступны пользователю. К ним относятся:

<span Times New Roman",«serif»">-ограничениеобновления определенных атрибутов с целью сохранения требуемых пропорций междуих старыми и новыми значениями;

<span Times New Roman",«serif»">-ограничения,требующие  сохранение  значений поля показателя в некоторомдиапазоне;

<span Times New Roman",«serif»">-ограничения,связанные  с заданными функциональнымизависимостями.

<span Times New Roman",«serif»">

<span Times New Roman",«serif»">Обычно в СУБД вязык манипулирования данными уже закладываются необходимые компонентыреализации указанных ограничений. Проблема обеспечения санкционированностииспользования данных является неоднозначной, но в основном  охватывает вопросы  защиты данных от нежелательноймодификации или уничтожения, а также от несанкционированного их чтения.

<span Times New Roman",«serif»">

<span Times New Roman",«serif»">В данной работея затрагиваю основные аспекты защиты баз данных, их реализацию на примерахконкретных СУБД, а так же юридическую сторону данного вопроса.

<span Courier New"">Защитаинформации

<span Courier New"">

<span Courier New"">Понятие защиты информации

<span Courier New"">

Защита информации — комплекс мероприятий, направленных на обеспечениеважнейших аспектов информационной безопасно­сти (целостности, доступности и,если нужно, конфиденциальности информации и ресурсов, используемых для ввода,хранения, обра­ботки и передачи данных) [1].

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

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

Основными критериями оценки надежности являются: политика безопасностии гарантированность.

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

Выбор конкретных механизмов обеспечения безопасности сис­темыпроизводится в соответствии со сформулированной политикой безопасности.

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

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

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

Надежность ДВБ зависит исключительно от ее реализации и корректностивведенных данных (например, данных о благонадеж­ности пользователей,определяемых администрацией).

Граница ДВБ образует периметр безопасности. Компоненты ДВБ, находящиесявнутри этой границы, должны быть надежными (следо­вательно, для оценкинадежности компьютерной системы достаточ­но рассмотреть только ее ДВБ). Откомпонентов, находящихся вне периметра безопасности, вообще говоря, нетребуется надежности. Однако это не должно влиять на безопасность системы. Таккак сей­час широко применяются распределенные системы обработки дан­ных, то под«периметром безопасности» понимается граница владе­ний определеннойорганизации, в подчинении которой находится эта система. Тогда по аналогии то,что находится внутри этой границы, считается надежным. Посредством шлюзовойсистемы, которая спо­собна противостоять потенциально ненадежному, а может бытьдаже и враждебному окружению, осуществляется связь через эту границу.

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

<span Courier New"">Защита ПК от несанкционированного доступа

Как показывает практика, несанкционированный доступ (НСД) представляетодну из наиболее серьезных угроз для злоумышленно­го завладения защищаемойинформацией в современных АСОД. Как ни покажется странным, но для ПК опасностьданной угрозы по сравнению с большими ЭВМ повышается, чему способствуют следующиеобъективно существующие обстоятельства:

1) подавляющая часть ПК располагается непосредственно в ра­бочихкомнатах специалистов, что создает благоприятные условия для доступа к нимпосторонних лиц;

2) многие ПК служат коллективным средством обработки ин­формации, чтообезличивает ответственность, в том числе и за за­щиту информации;

3) современные  ПК оснащены  несъемными накопителями на ЖМД очень большой емкости, причем информация на нихсохра­няется даже в обесточенном состоянии;

4) накопители на ГМД производятся в таком массовом количе­стве, что ужеиспользуются для распространения информации так же, как и бумажные носители;

5) первоначально   ПК   создавались  именно   как   персональное средство  автоматизации   обработки  информации,   а   потому и  не оснащались специальносредствами защиты от НСД.

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

Основные механизмы защиты ПК от НСД могут быть представ­лены следующимперечнем:

1) физическая защита ПК и носителей информации;

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

3) разграничение доступа к элементам защищаемой  информации;

4)  криптографическое закрытиезащищаемой информации, хранимой на носителях (архивация данных);

5)  криптографическое   закрытие  защищаемой   информации  в процессе непосредственной ее обработки;

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

<span Courier New"">Защита информации в базах данных

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

Эти два подхода отличаются следующими свойствами:

·<span Times New Roman"">       

В случаеизбирательного управления некоторый пользователь обладает раз­личными правами(привилегиями или полномочиями) при работе с данными объектами. Разныепользователи могут обладать разными правами доступа к одному и тому же объекту.Избирательные права характеризуются значи­тельной гибкостью.

·<span Times New Roman"">       

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

·<span Times New Roman"">       

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

·<span Times New Roman"">       

Пользователимогут быть объединены в специальные группы пользователей. Один пользовательможет входить в несколько групп. В стандарте вводится понятие группы PUBLIC, для которой должен быть определен минимальныйстандартный набор прав. По умолчанию предполагается, что каждый вновьсоздаваемый пользователь, если специально не указано иное, относит­ся к группе PUBLIC.

·<span Times New Roman"">       

Привилегии илиполномочия пользователей или групп — это набор действий (операций), которые онимогут выполнять над объектами БД.

·<span Times New Roman"">       

В последнихверсиях ряда коммерческих СУБД появилось понятие «роли». Роль — этопоименованный набор полномочий. Существует ряд стандартных ролей, которыеопределены в момент установки сервера баз данных. И име­ется возможностьсоздавать новые роли, группируя в них произвольные пол­номочия. Введение ролейпозволяет упростить управление привилегиями пользователей, структурировать этотпроцесс. Кроме того, введение ролей не связано с конкретными пользователями,поэтому роли могут быть определе­ны и сконфигурированы до того, как определеныпользователи системы.

·<span Times New Roman"">       

Пользователюможет быть назначена одна или несколько ролей.

·<span Times New Roman"">       

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

На самом элементарном уровне концепции обеспечения безопасности баз дан­ныхисключительно просты. Необходимо поддерживать два фундаментальных принципа:проверку полномочий и проверку подлинности (аутентификацию).

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

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

СУБД в своих системных каталогах хранит как описание самихпользователей, так и описание их привилегий по отношению ко всем объектам.

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

В ряде СУБД вводится следующий уровень иерархии пользователей — это ад­министраторБД. В этих СУБД один сервер может управлять множеством СУБД (например, MSSQLServer, Sybase). В СУБД Oracleприменяется однобазовая архитектура, поэтому там вводится понятие подсхемы —части общей схемы БД и вводится пользователь, имеющий доступ к подсхеме. Встандарте SQLне определена команда созданияпользователя, но практиче­ски во всех коммерческих СУБД создать пользователяможно не только в интер­активном режиме, но и программно с использованиемспециальных хранимых процедур. Однако для выполнения этой операции пользовательдолжен иметь право на запуск соответствующей системной процедуры.

В стандарте SQLопределены два оператора: GRANTи REVOKEсоответственно пре­доставления и отмены привилегий.

Оператор предоставления привилегий имеет следующий формат:

GRANT {<списокдействий  |  ALLPRIVILEGES }

ON<имя_объекта> ТО (<имя_пользователя>]  PUBLIC} [WITHGRANTOPTION]

Здесь список действий определяет набор действий из общедопустимогоперечня действий над объектом данного типа.

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

<имя_обьекта> — задает имя конкретного объекта: таблицы,представления, хра­нимой процедуры, триггера.

<имя_пользователя> или PUBLICопределяет, кому предоставляются данные приви­легии.

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

Рассмотрим пример, пусть у нас существуют три пользователя с абсолютноуни­кальными именами userl, user2 и user3. Все ониявляются пользователями од­ной БД.

User1 создал объект Таb1, он является владельцем этого объекта и может пере­датьправа на работу с эти объектом другим пользователям. Допустим, что поль­зовательuser2 является оператором, который должен вводить данные вТаb1 (например, таблицу новых заказов), а пользователь user3 является большим начальником (например, менеджеромотдела), который должен регулярно про­сматривать введенные данные.

Для объекта типа таблица полным допустимым перечнем действий являетсяна­бор из четырех операций: SELECT, INSERT, DELETE, UPDATE. При этом операция об­новление может быть ограниченанесколькими столбцами.

Общий формат оператора назначения привилегий для объекта типа таблицабу­дет иметь следующий синтаксис:

GRANT{[SELECT][.INSERT][,DELETED[.UPDATE (<списокстолбцов>)]} ON <имятаблицы>

ТО{<имя_пользователя>    PUBLIC }

[WITH GRANT OPTION ]

Тогда резонно будет выполнить следующие назначения:

GRANT INSERT

ON Tab1

ТОuser2 GRANT SELECT

ONTab1

TOuser3

Эти назначения означают, что пользователь user2 имеет право только вводить новые строки в отношениеТаb1> а пользователь user3 имеет право просматри­вать все строки в таблице Таb1.

При назначении прав доступа на операцию модификации можно уточнить, зна­чениекаких столбцов может изменять пользователь. Допустим, что менеджер отдела имеетправо изменять цену на предоставляемые услуги. Предположим, что цена задается встолбце COSTтаблицыТаb1. Тогда операция назначения при­вилегий пользователю user3 может измениться и выглядеть следующим образом:

GRANT SELECT. UPDATE (COST) ONTab1 TO user3

Если наш пользователь user1предполагает, что пользователь user4 может егоза­мещать в случае его отсутствия, то он может предоставить этому пользователювсе права по работе с созданной таблицей Таb1.

GRANT ALL PRIVILEGES

ON Tab1

TO user4 WITH GRANT OPTION

В этом случае пользователь user4может сам назначать привилегии по работе с таблицей Таb1 в отсутствие владельца объекта пользователя user1. Поэтому в случае появления нового операторапользователя user5 он может назначить ему правана ввод новых строк в таблицу командой

GRANT INSERT

ON Tab1 TO user5

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

GRANTSELECT. UPDATE. DELETE

ON Tab1

TO user4 WITH GRANT OPTION,

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

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

Так как представления могут соответствовать итоговым запросам, то дляэтих представлений недопустимы операции изменения, и, следовательно, для такихпредставлений набор допустимых действий ограничивается операцией SELECT. Если же представления соответствуют выборке избазовой таблицы, то для та­кого представления допустимыми будут все 4 операции:SELECT, INSERT, UPDATEи DELETE.

Для отмены ранее назначенных привилегий в стандарте SQLопределен опера­тор REVOKE. Оператор отмены привилегий имеет следующийсинтаксис:

REVOKE{<список операций | ALLPRIVILEGES} ON<имя_объекта>

FROM{<список пользователей | PUBLIC} {CASCADE  |  RESTRICT}

Параметры CASCADEили RESTRICTопределяют, каким образом должна произво­дитьсяотмена привилегий. Параметр CASCADEотменяетпривилегии не только пользователя, который непосредственно упоминался воператоре GRANTпри пре­доставлении емупривилегий, но и всем пользователям, которым этот пользова­тель присвоилпривилегии, воспользовавшись параметром WITHGRANTOPTION.

Например, прииспользованииоперации:

REVOKE ALL PRIVILEGES -  ON Tab1 TO user4 CASCADE

будут отменены привилегии и пользователя user5, которому пользователь user4 успел присвоить привилегии.

Параметр RESTRICKTограничивает отменупривилегий только пользователю, не­посредственно упомянутому в операторе REVOKE. Но при наличии делегирован­ных привилегий этотоператор не будет выполнен. Так, например, операция:

REVOKE ALL  PRIVILEGES ON Tab1 TO user4 RESTRICT

не будет выполнена, потому что пользователь user4 передал часть своих полно­мочий пользователю user5.

Посредством оператора REVOKEможноотобрать все или только некоторые из ра­нее присвоенных привилегий по работе сконкретным объектом. При этом из описания синтаксиса оператора отмены привилегийвидно, что можно отобрать привилегии одним оператором сразу у несколькихпользователей или у целой группы PUBLIC.

Поэтому корректным будет следующее использование оператора REVOKE:

REVOKE  INSERT ON Tab! TO user2.user4 CASCADE

При работе с другими объектами изменяется список операций, которыеисполь­зуются в операторах GRANTи REVOKE.

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

Если вы хотите изменить это условие, то после создания хранимойпроцедуры необходимо записать оператор REVOKE.

REVOKEEXECUTEONCOUNT_EXTOPUBLICCASCADEИ теперь мы можем назначить новые права пользователю user4.

GRANT EXECUTE ON COUNT_EX TOuser4

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

GRANTCREATETABLE. ALTER TABLE, DROP TABLE ON OB_LIB TO user1

В этом случае пользователь user1может создавать, изменять или удалять табли­цы в БД DB_LIB, однако онне может разрешить создавать или изменять таблицы в этой БД другимпользователям, потому что ему дано разрешение без права де­легирования своихвозможностей.

В некоторых СУБД пользователь может получить права создавать БД. Напри­мер,в MSSQLServerсистемный администраторможет предоставить пользова­телю main_userправо на создание своей БД на данном сервере. Этоможетбыть сделаноследующейкомандой:

GRANT CREATE DATABASE

ON SERVERJ) TO main user

По принципу иерархии пользователь main_user, создавсвою БД, теперь может предоставить права на создание или изменение любыхобъектов в этой БД дру­гим пользователям. В СУБД, которые поддерживаютоднобазовую архитектуру, такие разрешения недопустимы. Например, в СУБД Oracleна сервере создается только одна БД, но пользователимогут работать на уровне подсхемы (части таблиц БД и свя­занных с нимиобъектов). Поэтому там вводится понятие системных привиле­гий. Их очень много,80 различных привилегий.

Для того чтобы разрешить пользователю создавать объекты внутри этой БД,используется понятие системной привилегии, которая может быть назначена од­номуили нескольким пользователям. Они выдаются только на действия и кон­кретный типобъекта. Поэтому- если вы, как системный администратор, предо­ставилипользователю право создания таблиц (CREATETABLE), то для того чтобы он могсоздать триггер для таблицы, ему необходимо предоставить еще одну системнуюпривилегию CREATETRIGGER. Система защиты в Oracleсчитается од­ной из самых мощных, но это имеет иобратную сторону — она весьма сложная. Поэтому задача администрирования в Oracleтребует хорошего знания как се­мантики принциповподдержки прав доступа, так и физической реализации этих возможностей.

<span Courier New"">Реализация защиты в некоторых СУБД

<span Courier New"">

Архитектура защиты Access

Если у вас имеется опыт работыс защитой, используемой на сервере или большой ЭВМ, структура защиты в Access покажется вамзнакомой. Вы можете указать пользователей, которым предоставляется или,наоборот, не разрешается доступ к объектам базы данных. Кроме того, вы можетеопределить группы пользователей и назначить разрешения на уровне группы, чтобыоблегчить построение защиты для большого числа пользователей. Пользователюдостаточно быть членом группы, чтобы получить права доступа, установленные длянеё.

Accessхранит информацию о защитев двух местах. Во время установки программа <span Arial",«sans-serif»;mso-ansi-language: EN-US">Setup

создаст в папке <span Arial",«sans-serif»"><span Arial",«sans-serif»;mso-ansi-language: EN-US">Program<span Arial",«sans-serif»"> <span Arial",«sans-serif»;mso-ansi-language: EN-US">Files<span Arial",«sans-serif»"><span Arial",«sans-serif»;mso-ansi-language: EN-US">Microsoft<span Arial",«sans-serif»">Oficefficeстандартный файл рабочей группы (System.mdw), которыйвпоследствии используется по умолчанию при запуске Access. Этот файл содержит информацию обо всех пользователяхи группах. При создании базы данных Accessсохраняет сведения о правах, предоставляемых конкретным пользователям игруппам, в файле базы данных.

Общая структура защитыAccessотображена на рисунке 1. Учётные записи пользователейи групп хранятся в файле рабочей группы. Разрешение на доступ к конкретнымобъектам сохраняются в файле базы данных.

Рабочая группа

 (обычно System.mdw)

 Код рабочей группы

Пользователи

 Код пользователя

Группы

Код группы

База данных приложения

(таблицы, запросы, формы,

отчеты, модули),

принадлежащая рабочей группе

Объект

Разрешение на доступ к объекту

Код пользователя или группы

<img src="/cache/referats/21107/image002.gif" v:shapes="_x0000_s1026 _x0000_s1027 _x0000_s1028 _x0000_s1029 _x0000_s1030 _x0000_s1031 _x0000_s1032"> <img src="/cache/referats/21107/image003.gif" v:shapes="_x0000_s1033 _x0000_s1034 _x0000_s1035 _x0000_s1036 _x0000_s1037 _x0000_s1038 _x0000_s1039 _x0000_s1040 _x0000_s1041 _x0000_s1042">


Рис. 1

Расположение текущегофайла рабочей группы хранится в реестре Windows. Можно использовать служебную программу <span Arial",«sans-serif»;mso-ansi-language: EN-US">Wrkadm

<span Arial",«sans-serif»">.<span Arial",«sans-serif»;mso-ansi-language: EN-US">exe  (администратор рабочих групп) для изменениятекущего или определения нового файла рабочей группы. Кроме того, можновыбирать нужный файл рабочей группы во время выполнения приложения, задав соответствующийпараметр командной строки в ярлыке запуска. Если вам приходится часто запускатьв сети совместно используемое защищенное приложение, нужно позаботиться о том,чтобы системный администратор задал вашу рабочую группу, используемую по умолчанию,как общий  файл в сетевой папке.

Каждая рабочая группаимеет уникальный внутренний идентификатор, генерируемый Accessпри определении файла рабочих групп. Любая базаданных, созданная пользователем рабочей группы, «принадлежит» как этомупользователю, так и рабочей группе. Каждый пользователь и группа также имеетуникальный внутренний идентификатор, но можно дублировать один и тот же кодпользователя и группы в нескольких рабочих группах. Когда вы назначаете праводоступа к объекту своей базы данных, Accessсохраняет в ней внутренний идентификатор пользователя или группы вместе синформацией о доступе. Таким образом, предоставленные вами права перемещаютсявместе с файлом базы данных при копировании его в другую папку или на другойкомпьютер.

MSSQLServer
еще рефераты
Еще работы по программированию, базе данных