Права доступа в приложении "Игра в доминирование"


Обратимся к системе защиты приложения "Игра в доминирование". Серверная база данных содержит объекты, которые будут совместно использоваться в сети несколькими игроками. Необходимо обеспечить защищенность этих объектов в такой степени, которая позволит игрокам принять участие в игре и при этом не вмешиваться в ход игры. Клиентская база данных содержит объекты, которые будут использоваться одним игроком, имеющим собственную копию этой базы данных или открывшим базу данных клиента в режиме общего доступа. Взаимодействие с серверной базой данных осуществляется через интерфейс DАО с помощью процедур на VBA. Поэтому в клиентской базе данных имеет смысл защитить код на VBA и предоставить всем пользователям права, достаточные для использования объектов базы данных на уровне игрока. Таким образом, необходимо предоставить необходимые права группе Users и защитить проект VBA, как описано . Параметры системы защиты приложения "Игра в доминирование" приведены .
Замечание
В примере приложения "Игра в доминирование" на компакт-диске программный проект не защищен и может быть просмотрен любым пользователем.
 
Ограничение разрешений для встроенных учетных записей Access
Чтобы закрыть доступ к объектам базы данных посторонним пользователям, зарегистрированным с помощью стандартной учетной записи Admin:

  1. Подключите необходимый файл рабочей группы или создайте новый.

 Замечание
Для того чтобы обеспечить полную защиту вашей базы данных, не используйте стандартный файл рабочей группы System. mdw, создаваемый при установке Microsoft Access. Следует удостовериться, что файл рабочей группы, определяющий рабочую группу, к которой вы присоединяетесь, был создан с уникальным кодом рабочей группы, или, если это не так, следует создать новую рабочую группу.

  1. Активизируйте диалоговое окно Вход (Logon), предназначенное для регистрации пользователя. Это диалоговое окно появляется в момент открытия базы данных, если регистрация пользователя требует ввода непустого пароля. В Microsoft Access по умолчанию для регистрации пользователя используется стандартная учетная запись Admin. Поэтому, чтобы активизировать диалоговое окно Вход (Logon), необходимо задать непустой пароль для учетной записи пользователя Admin. Установка пароля пользователя описана . Необходимо добавить эту учетную запись в стандартную группу Admins. Создание учетной записи пользователя описано . Закройте Microsoft Access и откройте базу данных снова. Когда появится диалоговое окно Вход (Logon), зарегистрируйтесь с именем нового администратора.
  2. Удалите пользователя Admin из группы Admins.

Замечание
Если владельцем объектов в защищаемой базе данных должен быть пользователь, не входящий в группу администраторов, создайте для него учетную запись, снова перезапустите Access и зарегистрируйтесь с именем этого пользователя при открытии базы данных. Этот пользователь должен, по крайней мере, обладать правами Чтение данных (Read data) и Чтение макета (Read design) для всех объектов базы данных, которые требуется защитить.
 
Защита программного кода на VBA
Защитить программный проект VBA можно с помощью пароля:

  1. Откройте окно редактора Visual Basic, например с помощью комбинации клавиш <Alt>+<Fll>.
  2. Выберите команду Сервис, Свойства <Имя программного проекта> (Tools, <Project name> Properties). Появится диалоговое окно свойств программного проекта.
  3. Откройте вкладку Защита (Protection) и введите пароль в поле Пароль (Password) и Подтверждение пароля (Confirm password). Этот пароль будет требоваться при попытке отобразить диалоговое окно свойств проекта.
  4. Если необходимо защитить проект от просмотра, установите флажок Запретить просмотр программного кода (Lock project for viewing). Это значит, что введенный пароль будет также использован для защиты программного проекта от просмотра.
  5. Нажмите кнопку ОК.

Установленные параметры начнут действовать только при следующем открытии базы данных.
Есть другой способ защиты программного кода приложения Access — можно создать файл, содержащий откомпилированную версию программного проекта и всех объектов базы данных (файл с расширением mde) или проекта Access (файл с расширением ade). Открыв этот файл, пользователи могут использовать все созданные в нем объекты, изменять данные и выполнять макросы и процедуры VBA, но не будут иметь возможности изменить структуру объектов или программный код. Такой файл имеет намного меньший размер по сравнению с исходным файлом базы данных или проекта. Права доступа и прочие обстоятельства, необходимые пользователю для возможности создания файла mde или ade, приведены в справочной системе Access 2010.
Внимание
Создать файл МОЕ или ADE можно только на основе базы данных или проекта Access в формате Access 2010. Если ваша база данных (или проект) сохранена в формате Access 2000, потребуется сначала преобразовать ее в формат Access 2010.
Чтобы создать файл МDЕ на основе базы данных в формате Access 2002:

  1. Откройте Access 2002, но не открывайте базу данных или проект Access.
  2. Выберите команду Сервис, Служебные программы, Создать MDE-файл (Tools, Database Utilities, Make MDE File).
  3. Появится диалоговое окно База данных для сохранения как MDE (Database to Save as MDE). В раскрывающемся списке Тип файлов (Files of type) выберите элемент Базы данных Microsoft Access (Microsoft Access Databases). Затем укажите папку и имя файла исходной базы данных (файла с расширением mdb) и нажмите кнопку Создать MDE (Make MDE).
  4. Появится диалоговое окно Сохранение файла MDE под именем (Save MDE As). Укажите папку и введите имя целевого файла в формате MDE. ;
  5. Нажмите кнопку Сохранить (Save).

Чтобы создать файл ADE на основе проекта в формате Access 2010:

  1. Откройте Access 2002, но не открывайте базу данных или проект Access.
  2. Выберите команду Сервис, Служебные программы, Создать MDE-файл (Tools, Database Utilities, Make MDE File).
  3. Появится диалоговое окно База данных для сохранения как MDE (Database to Save as MDE). В раскрывающемся списке Тип файлов (Files of type) выберите элемент Проекты Access (Microsoft Access Projects). Затем укажите папку и имя файла исходного проекта Access 2010 (файла с расширением adp) и нажмите кнопку Создать MDE (Make MDE).
  4. Появится диалоговое окно Сохранение файла ADE под именем (Save ADE As). Укажите папку и введите имя целевого файла в формате ADE.
  5. Нажмите кнопку Сохранить (Save).