Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (1084484), страница 67
Текст из файла (страница 67)
В следующем примере изменяется название должности всехагентов по продажам в таблице «Сотрудники».D o C m d . R u n S Q L « U P D A T E Сотрудники « &«SET Сотрудники.Тк1е = 'Региональный представитель' « &« W H E R E Сотрудники.ТШе = 'Агент по продажам';»OpenQueryвыполняет макрокомандуОткрытьЗапрос( O p e n Q u e r y ) в программе VBA. С его помощью можно открыть запрос в режиме таблицы, Конструктора или просмотра. При этом устанавливается одиниз следующих режимов работы с данными: добавление, изменение или только чтение.В следующем примере запрос «Выработка сотрудников» открывается врежиме таблицы, в котором пользователю разрешается просмотр записей.МетодDoCmd.OpenQuery «Выработка сотрудников»,, acReadOnlyВыбор варианта выполнения запросов определяется программистом с учетом особенностей решаемой задачи.1 0 . 7 .
З а щ и т а баз д а н н ы хВ Access реализованы следующие способы защиты баз данных: парольнаязащита, защита на уровне пользователей и шифрование.ПарольнаязащитаБДПарольная защита является простым и часто достаточным средством обеспечения защиты Б Д от открытия несанкционированными пользователями.Используемый при этом пароль называют паролем базы данных.З н а я пароль БД, любой пользователь сможет ее открыть и использовать, атакже выполнить все необходимые операции с ней. Установка пароля может11 Зак. 541322Часть 3.
Современные СУБД и их применениебыть запрещена в случае, если для БД установлена защита на уровне пользователя и наложен запрет на парольную защиту.Парольная защита может использоваться в дополнение к защите на уровне пользователя. В этом случае устанавливать парольную защиту можетпользователь, обладающий правами администратора БД.Поскольку парольную защиту можно применять наряду с защитой на уровне пользователя, возникает вопрос: «Можно ли защитить БД паролем, а затем защитить ее на уровне пользователя?».
Ответ — нет. Дело в том, что защита на уровне пользователя состоит в создании новой БД, которая защищенаи имеет структуру исходной БД. Из-за того, что Access не позволяет защищенную на уровне пользователя БД именовать так же, как и исходную, тоновая БД всегда будет без пароля. После открытия БД ее можно легко защитить с помощью пароля.
Таким образом, для установки обоих видов защитыБД сначала защищают на уровне пользователя, а потом устанавливают пароль.Если парольная защита действует наряду с защитой на уровне пользователя, то пользователю предоставляется возможность выполнять над объектами БД действия, предусмотренные правами доступа.Парольную защиту БД нельзя использовать в случае, если предполагаетсявыполнять репликацию БД. Система Access не позволяет создавать копии(реплики) БД, защищенных паролем.Метод парольной защиты достаточно надежен, так как пароль системаAccess шифрует, и к паролю нет прямого доступа. Он хранится вместе с защищаемой БД, а поэтому открыть БД не удается и на другом компьютере с установленной там системой.Увидеть пароль или найти место в файле БД, которое он занимает, — занятие неперспективное.
Попытки авторов сделать это с помощью средств прямого редактирования файлов (например, утилитой d i s k e d i t комплекта утилит N o r t o n U t i l i t i e s ) и специально для этого разработанных программ на языкеПаскаль ни к чему не привели. При использовании парольной защиты отпользователя требуется подобрать удачный пароль и надежно его сохранитьот потери и от хищения.Процедура установки парольной защиты БД включает следующие шаги.1. Закрытие базы данных, если она открыта. Если база данных используется в сети, следует проверить, что все остальные пользователи тоже закрыли ее.2. Выбор в меню команды Ф а й л | О т к р ы т ь ( F i l e | O p e n ) .
Появится диалоговое окно Открытие файла базы данных ( O p e n ) .3. Установка с помощью соответствующего списка в правой нижней частиокна открытия файла режима монопольного доступа ( М о н о п о л ь н о( E x c l u s i v e ) ) и открытие базы данных.10. СУБД Access 20023234. Выбор командыС е р в и с | З а щ и т а | Задать пароль базы д а н н ы х (Tools| Security | Set Database Password).5.Ввод пароля в поле П а р о л ь ( P a s s w o r d ) с учетом регистра клавиатуры.6. Подтверждение введенного пароля путем повторного его ввода в полеП о д т в е р ж д е н и е ( V e r i f y ) , а после этого — нажатие О К .Удалить пароль намного проще, главное — знать его при открытии БД.
Дляудаления пароля Б Д следует выполнить четыре действия.1. Открыть базу данных в режиме монопольного доступа (см. установкупароля выше).2. И з меню системы выдать команду С е р в и с | З а щ и т а | У д а л и т ь п а р о л ьб а з ы д а н н ы х ( T o o l s | S e c u r i t y | U n s e t D a t a b a s e P a s s w o r d ) . Командадоступна, если пароль базы данных уже установлен.3. В поле П а р о л ь ( P a s s w o r d ) появившегося окна У д а л и т ь п а р о л ь б а з ыданных ввести текущий пароль.4. Нажать ОК. База данных по-прежнему остается открытой.
При очередном ее открытии система Access запрашивать пароль не будет.Средств изменения пароля Б Д в Access нет, поэтому для изменения парол я следует удалить пароль, а затем определить новый. При использованиипарольной защиты нужно учитывать, что она не защищает Б Д от удаления.Если пароль утерян, то доступ к защищенной БД не получить.
Попавшую втакое положение БД остается удалить. Для удаления Б Д можно воспользоваться, например, программой MS Windows П р о в о д н и к (Windows Explorer). Удалить БД, не выходя из Access, можно так: вызвать окно открытия файла базыданных, выделить удаляемую БД, вызвать контекстное меню и выбрать пунктУ д а л и т ь ( D e l e t e ) . После выполнения операции удаления БД последняя попадетв Корзину.З а щ и щ а я паролем, следует иметь в виду, что в случае связываниятаблицБД, защищенных паролем, могут быть проблемы. Пусть таблица Б Д (назовем ее подключаемой Б Д ) связывается с таблицей защищенной паролем БД.При образовании связи система Access потребует от пользователя ввода пароля защищенной БД. Введенный пароль системой в некотором месте запоминается.
Если в последующем пароль защищенной Б Д изменится, то доступк защищенным таблицам подключаемой Б Д будет невозможен. Система Accessинформирует об изменении пароля.Защитана уровнепользователяЗащита на уровне пользователя применяется в случаях, когда с одной Б Дработают несколько пользователей или групп пользователей, имеющих разные права доступа к объектам БД. Использовать защиту на уровне пользова-324Часть 3. Современные СУБД и их применениетеля можно на отдельном компьютере и при коллективной работе в составелокальной сети.
Этот способ защиты подобен способам разграничения доступа в локальных сетях.Для организации защиты на уровне пользователя в системе Access создаются рабочие группы (РГ). Каждая рабочая группа определяет единую технологию работы совокупности пользователей. Система Access в произвольный момент времени может работать с одной РГ. Заметим, что СУБД можетработать с одной базой данных. Если в сеансе работы С У Б Д в ней попытаться открыть вторую БД, то первая БД автоматически закроется. Правда, можно запустить на выполнение несколько систем Access, поскольку Windowsявляется многооконной системой.И н ф о р м а ц и я о каждой РГ х р а н и т с я в соответствующем ф а й л е РГ(System.mdw), который автоматически создается при установке системы.Информация о размещении этого файла хранится в системном реестре. Дляуправления рабочими группами в Access 2002 имеется программа «Администратор рабочих групп» (АРГ), запустить которую можно из подменю С е р в и с| З а щ и т а (Tools | Security).Кроме сведений о системе защиты на уровне пользователя в файле РГ хранятся параметры системы Access.
Изменить установленные по умолчаниюсистемные параметры пользователь может с помощью команды С е р в и с | П а р а м е т р ы ( T o o l s | P a r a m e t e r s ) . Эти параметры включают в себя: параметрыотображения информации системой Access (строки состояния, окна запуска,панели инструментов, скрытых и системных объектов), параметры средствразработки запросов, экранных форм, отчетов и программ (модулей), установку действий на нажатие клавиш, параметры режима правки и поиска информации в БД и другие параметры, определяющие режим открытия БД поумолчанию (общий или монопольный доступ), вид блокировки при совместном изменении информации в БД (отсутствие, всех записей или только изменяемой записи), период обновления и т.
д.Файл РГ описывает группы пользователей и отдельных пользователей,входящих в эту РГ. Он содержит учетные записи групп пользователей и отдельных пользователей. По каждой учетной записи система Access хранитправа доступа к объектам базы данных.По умолчанию в каждую рабочую группу входит две группы пользователей: администраторы (имя группы Admins) и обычные пользователи (имягруппы U s e r s ) .
Причем, в группу A d m i n s первоначально включен один администратор под именем A d m i n .При создании групп указывается имя (идентификатор) группы и код,представляющий собой последовательность от 4 до 20 символов. При регистрации (создании) пользователей в системе защиты им присваивается имя,код и необязательный пароль.