После этого у вас будет копия базы данных, владельцем которой является новый пользователь, созданный в вашей рабочей группе.
Теперь вы готовы к запуску мастера защиты (если, конечно, зарегистрировались как владелец базы данных, которую хотите защитить). Предварительно следует сделать на всякий случай запасную копию этой базы данных (хотя мастер может сам сделать это вместо вас).
Чтобы запустить мастера защиты, выберите команду Сервис - Защита - Мастер (Tools - Security - User-Level Security Wizard). Откроется окно диалога, представленное на рисунке 8.
Первое окно диалога содержит краткое описание работы мастера и предоставляет две возможности. Если вы установите верхний переключатель, мастер создаст новый файл рабочей группы, создаст новый код пользователя (не Admin) в этой рабочей группе и затем установит защиту для базы данных, используя эту рабочую группу и нового пользователя. При установке нижнего переключателя (он недоступен, если вы зарегистрировались как пользователь Admin), Access защитит базу данных, используя текущую рабочую группу текущий код пользователя.
Рис. 8. Начальное окно диалога мастера защиты
Щелкните на кнопке Далее (Next), чтобы перейти в следующее окно мастера, показанное на рисунке 9.
Рис. 9. Выбор объектов, которые нужно защитить
По умолчанию мастер защищает все объекты базы данных. (Access не обеспечивает защиты для страниц доступа к данным, поскольку они хранятся вне файла базы данных.) Вы можете отменить выбор определенных объектов, сняв флажки рядом с их именами. Например, некоторые формы и отчеты вы можете оставить незащищенными, но при этом назначить разрешения на доступ ко всем таблицам и запросам. Щелкните на кнопке Далее.
В следующем окне диалога, показанном на рисунке 10, мастер предложит создать одну пли несколько дополнительных групп. Вы можете щелкнуть на имени группы в левом списке, чтобы увидеть разрешения, которые будут предоставлены этой группе. Например, если вы хотите образовать группу пользователей, имеющих разрешения только на чтение и запуск, то установите флажок Только чтение (Read-Only Users).
Рис. 10. Выбор дополнительных групп, создаваемых мастером
Вы можете принять генерируемый случайным образом код группы, отображаемый в этом окне мастера, или ввести свой собственный код. В любом случае рекомендуется записать с точностью до регистра букв имя и код группы, поскольку эта информация может потребоваться вам при внесении изменений в группу. Мастер предоставляет возможность определить пользователей и включить их в выбранные группы.
Если вам не нужны предлагаемые мастером группы, просто щелкните на кнопке Далее, чтобы перейти в следующее окно диалога, представленное на рисунке 11.
Рис. 11. Предоставление некоторых разрешений группе Users
Это окно мастера позволяет предоставить некоторые разрешения универсальной группе Users. По умолчанию для полной защиты базы данных мастер не оставляет этой группе каких-либо разрешений. Если вы откроете защищенную базу данных, то обнаружите, что вы можете просматривать любые данные и макеты всех объектов, но вам не удастся внести какие-либо изменения. Это было достигнуто путем предоставления группе Users разрешения Открытие/запуск (Open/Run) для базы данных, а для всех других объектов — разрешения Чтение макета (Read Disign) или Чтение данных (Read Data). Для этого нужно сначала установить верхний переключатель и затем указать соответствующие разрешения в зависимости от типов объектов. Обратите внимание на предупреждение мастера по поводу предоставления разрешений группе Users! Щелкните на кнопке Далее, чтобы перейти в следующее окно диалога, показанное на рисунке 12.
Рис.12. Определение новых пользователей в рабочей группе
Чтобы добавить пользователя в рабочую группу, щелкните на элементе Добавить пользователя (Add NewUser) в начале списка, заполните поля Пользователь (UserName), Личный код (PID) и (необязательно) Пароль (Password) и затем щелкните на кнопке Добавить пользователя в список (Add This User To The List).
Новые пользователи, добавленные в этом окне, помечаются звездочкой, отображаемой рядом со значком. Вы можете просмотреть информацию о новом пользователе, выделив его имя в списке, и в случае ошибки удалить его, щелкнув на кнопке Удалить пользователя из списка (Delete User From List).
Щелкните на кнопке Далее, чтобы перейти в следующее окно диалога, показанное на рисунке 13, в котором вы можете включить пользователей в нужные группы.
Рис. 13. Определение вхождения пользователя в группу
Щелкните на кнопке Далее, чтобы перейти в последнее окно мастера, представленное на рисунке 14.
Рис.14. Последнее окно мастера защиты
Последнее окно диалога позволяет задать имя для резервной копии файла базы данных. В предложенном мастером варианте используется исходное имя базы данных с расширением .bak. Щелкните на кнопке Готово (Finish), чтобы позволить мастеру закончить свою работу.
После установки защиты для объектов базы данных мастер выведет отчет со сведениями о новой рабочей группе (если она создавалась) и информацией, которая может вам потребоваться при переопределении пользователей и групп, созданных мастером. При закрытии окна отчета мастер предложит сохранить отчет в файле снимка (с расширением .snp). Данным предложением мастера следует воспользоваться, чтобы не потерять эту критически важную информацию. Затем мастер закроет защищенную базу данных, зашифрует се и снова ее откроет. Если в базе данных определена начальная (стартовая) форма, вы можете удерживать нажатой клавишу Shift в течение этого процесса, чтобы избежать запуска приложения при открытии защищенной базы данных.
Если результат вас не устраивает, вы можете удалить защищенную базу данных, восстановить исходную базу данных, переименовав резервную копию, созданную мастером.
§9. Настройка защищенной базы данных
После создания защищенной базы данных нужно определить новые группы и пользователей, чтобы облегчить предоставление нужных вам разрешений. Вы можете создать только новых пользователей, но в этом случае вам придется назначать разрешения каждому пользователю индивидуально. Значительно удобнее определить по одной группе для каждого уровня доступа, который вы намерены предоставить, затем определить пользователей и включить их в соответствующие группы.
Откройте защищенную базу данных (удерживайте нажатой клавишу Shift, если вы открываете защищенную копию базы данных). Выберите команду Сервис - Защита - Пользователи и группы (Tools - Security - User And Group Accounts), чтобы вывести на экран окно диалога Пользователи и группы (User And Group Accounts). На вкладке Группы (Groups) щелкните на кнопке Создать (New), чтобы открыть окно диалога Новый пользователь или группа (New User/Group), показанное на рисунке 15. Создание новой группы совершенно аналогично определению нового пользователя – генерация внутреннего идентификатора группы производится с учетом регистра символов в имени и коде, которые вы ввели. Щелкните на кнопке ОК, чтобы добавить новую группу.
Рис.15. Создание новой группы защиты
Затем нужно создать пользователей и включить их в только что созданные группы.
Чтобы определить пользователя как члена группы, выберите команду Сервис - Защита - Пользователи и группы. На вкладке Пользователи (Users) выберите пользователя, которого вы хотите включить в одну или несколько групп. В левом списке окна диалога отображаются имеющиеся группы, а правом списке — группы, в которые входит этот пользователь. На рисунке 16 показано добавление в группу NotAdmin пользователя Buchanan_Nike.
Рис. 16. Включение пользователя в группу
Теперь нужно назначить разрешения для каждой группы. Закройте окно диалога Пользователи и группы. Выберите команду Сервис - Защита - Разрешения (Tools - Security- User And Group Permissions), чтобы открыть окно диалога, показанное на рисунке 17.
Установите переключатель Список (List) в положение Группы (Groups), чтобы увидеть список групп. Вы можете начать с предоставления всех разрешений группе AppAdrmin. Выделите ее в списке Пользователи и группы (User/Group Name) и затем последовательно выбирайте каждый тип объекта в раскрывающемся списке Тип объекта (Object Type). Начните с самой базы данных и установите флажок Администратора (Administer) в области Разрешения (Permissions). Перед выбором нового типа щелкните на кнопке Применить (Apply). После выбора пункта Таблицы (Tables) в раскрывающемся списке Тип объекта выделите все элементы в списке объектов. Для этого выделите самый верхний элемент, прокрутите список вниз и щелкните на последнем элементе при нажатой клавише Shift. Сделайте так, чтобы флажок Администратора появился с черной (а не серой) галочкой, и щелкните на кнопке Применить. То же самое проделайте для запросов, форм, отчетов, макросов и модулей.