94 lines
4.7 KiB
PHP
94 lines
4.7 KiB
PHP
<?php
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Настройки регистрации событий безопасности (ФСТЭК №21, меры РСБ.*)
|
||
|--------------------------------------------------------------------------
|
||
*/
|
||
|
||
return [
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Подключение к БД журнала аудита (РСБ.3)
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Журнал хранится в отдельном соединении с правами «только INSERT» для
|
||
| приложения, чтобы пользователи не могли изменять записи.
|
||
|
|
||
*/
|
||
'connection' => env('AUDIT_DB_CONNECTION', 'audit'),
|
||
|
||
'table' => env('AUDIT_TABLE', 'audit_log'),
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Подпись целостности записей (РСБ.3)
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Каждая запись подписывается HMAC-SHA256. Ключ хранить отдельно.
|
||
| Используется хеш-цепочка (prev_hash), чтобы выявлять удаление записей.
|
||
|
|
||
*/
|
||
'hmac_key' => env('AUDIT_HMAC_KEY'),
|
||
'chain' => env('AUDIT_HASH_CHAIN', true),
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Срок хранения журналов (РСБ.8)
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Для УЗ-1 рекомендуется не менее 3 лет.
|
||
|
|
||
*/
|
||
'retention_days' => (int) env('AUDIT_RETENTION_DAYS', 1095),
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Дублирование в SIEM (РСБ.7)
|
||
|--------------------------------------------------------------------------
|
||
|
|
||
| Канал логирования Monolog (syslog/gelf), куда параллельно отправляются
|
||
| события безопасности для мониторинга в реальном времени.
|
||
|
|
||
*/
|
||
'siem' => [
|
||
'enabled' => env('AUDIT_SIEM_ENABLED', false),
|
||
'channel' => env('AUDIT_SIEM_CHANNEL', 'siem'),
|
||
],
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Контроль переполнения (РСБ.4)
|
||
|--------------------------------------------------------------------------
|
||
*/
|
||
'disk_alert_threshold' => (int) env('AUDIT_DISK_ALERT_THRESHOLD', 80),
|
||
|
||
/*
|
||
|--------------------------------------------------------------------------
|
||
| Перечень регистрируемых типов событий (РСБ.1)
|
||
|--------------------------------------------------------------------------
|
||
*/
|
||
'events' => [
|
||
'auth.login.success' => 'Успешный вход пользователя',
|
||
'auth.login.failed' => 'Неудачная попытка входа',
|
||
'auth.logout' => 'Выход пользователя',
|
||
'auth.locked' => 'Блокировка учётной записи после неудачных попыток',
|
||
'auth.mfa.enabled' => 'Включение многофакторной аутентификации',
|
||
'auth.mfa.disabled' => 'Отключение многофакторной аутентификации',
|
||
'auth.mfa.failed' => 'Неудачная проверка второго фактора',
|
||
'auth.password.changed' => 'Смена пароля',
|
||
'user.created' => 'Создание учётной записи',
|
||
'user.updated' => 'Изменение учётной записи',
|
||
'user.deleted' => 'Удаление (блокировка) учётной записи',
|
||
'role.assigned' => 'Назначение роли / изменение прав доступа',
|
||
'role.revoked' => 'Отзыв роли / прав доступа',
|
||
'pdn.viewed' => 'Просмотр персональных данных',
|
||
'pdn.created' => 'Создание персональных данных',
|
||
'pdn.updated' => 'Изменение персональных данных',
|
||
'pdn.deleted' => 'Удаление персональных данных',
|
||
'pdn.exported' => 'Выгрузка / экспорт персональных данных',
|
||
'security.incident' => 'Событие безопасности / инцидент',
|
||
],
|
||
];
|