Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Zashita_informatsii_Laboratornaya_rabota_3.doc
Скачиваний:
8
Добавлен:
13.09.2019
Размер:
219.65 Кб
Скачать

Защита программ Visual Basic для приложений в базе данных Access

Программы Microsoft Visual Basic для приложений (VBA) (Visual Basic для приложений (VBA). Макро-версия языка программирования Microsoft Visual Basic, используемая для программирования приложений Microsoft Windows и поставляемая с некоторыми приложениями (Microsoft). ) защищают либо с помощью пароля, либо путем сохранения базы данных в виде MDE-файла. Пароль позволяет защитить только программу, тогда как сохранение базы данных в MDE-файле защищает формы, отчеты и программы Visual Basic. Защита на уровне пользователей (Защита на уровне пользователей. При активизации защиты на уровне пользователей в базе данных Microsoft Access администратор базы данных или владелец объекта предоставляет определенные разрешения отдельным пользователям и группам пользователей на следующие объекты: таблицы, запросы, формы, отчеты и макросы.) не защищает программу, но обеспечивает защиту форм и отчетов, ссылающихся на эту программу.

Защита паролем программы Visual Basic для приложений (VBA)

В файле проекта Microsoft Access (.adp) (Проект Microsoft Access. Файл Microsoft Access, имеющий подключение к базе данных Microsoft SQL Server, который используется для создания приложений в архитектуре клиент/сервер. Проект не содержит данные или объекты определения данных, такие как таблицы и представления.) и базы данных Microsoft Access (.mdb) (База данных. Набор данных, относящихся к одной теме или использующихся для одной цели. В базе данных сведения об отдельных объектах, например сотрудниках или заказах, сгруппированы по таблицам, записям и полям.) существует возможность защиты всех стандартных модулей (Стандартный модуль. Модуль, в который помещают процедуры Sub и Function, которые должны быть доступными для всех процедур в этой базе данных.), а также модулей класса (Модуль класса. Модуль, содержащий описание нового объекта. Новый объект создается при появлении каждого экземпляра класса. Процедуры, определенные в этом модуле, становятся свойствами и методами объекта. Модули классов могут существовать независимо или связываться с формами и отчетами.) (таких как программы форм и отчетов) путем защиты программ VBA паролем, который необходимо ввести для просмотра и редактирования программы VBA в редакторе Visual Basic. Когда пароль установлен, его достаточно ввести один раз за сеанс. Пароль требуется не только для просмотра и редактирования, но также и для вырезания, копирования, вставки, экспорта и удаления любого модуля. Тем не менее, такая защита программы VBA не препятствует запуску существующих программ VBA вами или другим пользователем.

Сохранение базы данных Microsoft Access в виде MDE-файла

При сохранении базы данных Microsoft Access (База данных. Набор данных, относящихся к одной теме или использующихся для одной цели. В базе данных сведения об отдельных объектах, например сотрудниках или заказах, сгруппированы по таблицам, записям и полям.) в виде MDE-файла будут скомпилированы все модули, удалены все изменяемые исходные программы, а конечная база данных будет сжата. Программы Visual Basic будут по-прежнему выполняться, но их нельзя будет просматривать или изменять. База данных Access по-прежнему будет работать нормально. Пользователи смогут обновлять данные и выполнять отчеты, а из-за удаления исходных кодов уменьшится размер базы данных. Кроме того, будет оптимизировано использование памяти, что повысит быстродействие.

Сохранение базы данных как MDE-файла делает невозможным выполнение следующих действий.

  • Просмотр, изменение или создание форм, отчетов или модулей в режиме конструктора.

  • Добавление, удаление или изменение ссылок на библиотеки объектов или базы данных.

  • Изменение программы с помощью свойств или методов Microsoft Access или модели объектов VBA (MDE-файл не содержит текстов исходных программ).

  • Импорт и экспорт форм, отчетов или модулей. Однако таблицы, запросы, страницы доступа к данным (Страница доступа к данным. Опубликованная с помощью Microsoft Access веб-страница, имеющая подключение к базе данных. С помощью страницы доступа к данным можно просматривать, добавлять, изменять и обрабатывать данные, хранящиеся в базе данных. Страницы доступа к данным могут также содержать данные из других источников, таких как Microsoft Excel.) и макросы можно импортировать и экспортировать в базы данных, не являющиеся MDE-файлами.

Модули и защита на уровне пользователей

В базах данных Microsoft Access 2000 и более поздних версиях для стандартных модулей (Стандартный модуль. Модуль, в который помещают процедуры Sub и Function, которые должны быть доступными для всех процедур в этой базе данных.) и модулей класса (Модуль класса. Модуль, содержащий описание нового объекта. Новый объект создается при появлении каждого экземпляра класса. Процедуры, определенные в этом модуле, становятся свойствами и методами объекта. Модули классов могут существовать независимо или связываться с формами и отчетами.) (таких как программы форм и отчетов) больше не применяется защита на уровне пользователя, как было в предыдущих версиях. Однако формы и отчеты по-прежнему могут быть защищены на уровне пользователя. Это означает, что механизм защиты модулей отличается от механизма защиты форм и отчетов.

Например, при наличии соответствующих разрешений (Разрешения. Набор атрибутов, определяющих права пользователя на данные или объекты в базе данных.) пользователь может добавлять элементы управления в форму, но если проект VBA заблокирован для просмотра и защищен паролем, который пользователю не известен, то пользователь не сможет просмотреть или изменить модуль формы. И наоборот, доступ к структуре формы или отчета может быть закрыт на уровне пользователя по причине отсутствия разрешения «Изменение макета», но, зная пароль проекта VBA, можно получить доступ к модулю формы или отчета.

Существует одно исключение. Даже имея разрешение «Изменение макета» для формы или отчета, пользователь не может удалить форму или отчет или установить для свойства Наличие модуля (HasModule) значение Нет, поскольку это приведет к удалению модуля, применяемого в данной форме или отчете.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]