Аудит

Настройка аудита через Flexberry Designer осуществляется в несколько этапов.

Настройка базы аудита

База аудита может храниться как в отдельной базе, так и в базе приложения.

Настройка совершается на форме настройки MS SQL Direct Generator (см. пункт БД аудита в БД приложения). Также часть настроек базы данных находится в свойствах класса со стереотипом Application.

Настройка стадии

Настройки аудита для стадии осуществляются на форме настроек Стадии на вкладке Настройка аудита

Пример

  • Вести аудит приложения - необходимость вести аудит для всего приложения.
  • Режим записи аудита по умолчанию - режим записи данных аудита в базу данных по умолчанию (синхронный или асинхронный). Будет устанавливаться для классов при генерации настроек аудита. Если в классе указана другая настройка, то для конкретно этого класса будет использоваться указанная в нем => приоритет настроек стадии меньше приоритета настроек класса.
  • Включить аудит во всех классах - кнопка включения аудита во всех существующих классах стадии. Включение аудита подразумевает установку настройки Вести аудит класса, создание представления AuditView и проставление настроек аудита по умолчанию.
    Настройка аудита по умолчанию включает в себя:
  • Установку настройки Вести аудит класса
  • Установку настройки Добавить поля аудита
  • Установку настройки Вести аудит операции создания
  • Установку настройки Вести аудит операции удаления
  • Установку настройки Режим записи аудита как Синхронный

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

Настройка классов

Настройки аудита для классов осуществляются на форме настроек Класса на вкладке Настройка аудита

Пример

Настройки аудита

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

AuditView - представление аудита

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

Настройка приложения

Настройки аудита для класса-приложения (со стереотипом Application) осуществляются на форме настроек rласса на вкладке Настройка аудита

Пример

  • Имя строки соединения с БД аудита - имя строки соединения, которая будет передаваться в Win-сервис аудита, для указания на базу данных аудита.
  • Адрес сервиса аудита - адрес, по которому располагается Win-сервис аудита.
  • Вести аудит сессий пользователей - настройка ведения аудита сессий.

Примечание: данные настройки будут актуальны только после реализации второго этапа

Генерация настроек

Среди настроек аудита, определяемых в Flexberry Designer, можно выделить следующие типы:

  • Настройки стадии (общие настройки аудита для всех генерируемых со стадии приложений).
  • Настройки классов со стереотипом application (настройки аудита, определяемые для конкретного генерируемого приложения (на настоящий момент ASP-генератор поддерживает генерацию только одного приложения)).
  • Настройки классов со стереотипом implementation (настройки аудита, определяемые для конкретных классов, которые войдут в сборку объектов).

Схема генерации настроек аудита из Flexberry Designer в web-приложение

Пример

Настройки классов со стереотипом implementation будут генерироваться в код объектов генератором объектов.
Настройки стадии и класса со стереотипом application будут генерироваться в config-файл web-приложения ASP-генератором.

Примеры настройки

В случае, если нет желания или возможности перегенерировать проект, можно воспользоваться следующими инструкциями: