Аудит
Компоненти аудиту
Всі аудито-важливі події фіксуються як події додатку (Application Events), за опрацювання цих подій відповідальна audit-lib бібліотека.
Всі події опрацьовуються асинхронно і не вносять значний вплив на швидкодію основних сценаріїв додатків.
Запис в БД відбувається за допомогою Kafka connect-api, що дозволяє виділити опрацювання повідомлень подій в окремий додаток, який використовує вбудований інструментарій Kafka. Використовується Confluent JDBC Sink
База даних та користувачі для доступу
БД <назва реєстру>_audit створюється окремо на кроці створення БД з Helm Chart’у
Користувач audit_service_user має доступ до таблиць де зберігаються всі події аудиту, права лише на вставку даних.
Події
Основні події
Аудиту підлягають операції користувача в системі та окремі події системи. Операції користувача фіксуються на початку операції на етапі звернення до сторонніх ресурсів системи (БД, Ceph) та в кінці операції. Події системи фіксуються лише раз - в момент і в місці виникнення події.
Візуалізація
Для візуалізації аудит логів використовується Redash.
Забеспечення пошуку по контексту подій та візуалізації поля контекст відбувається в окремих звітах в залежності від типу подій (структура контексту). Трансформація поля контекст відбувається за допомогою PostgreSQL. |