Передача событий безопасности в файл или БД#
В blitz-keeper можно настроить регистрацию событий безопасности в один или несколько приемников. Настройка задается в блоке настроек audit.
Необходимо задать следующие настройки:
emitters– определяет список приемников записей аудита. По каждому приемнику заполняется блок настроек:type– тип приемника. Возможные значения:audit-store– запись производится в СУБД;log– запись производится в логгер с именем AUDIT.
enabled– необязательная настройка – определяет, включен или нет приемник;include– необязательная настройка – перечисляются типы событий безопасности (см. таблицу ниже), по которым осуществляется запись в приемник. Если настройка не указана, то пишутся все события безопасности;exclude– необязательная настройка – перечисляются типы событий безопасности (см. таблицу ниже), которые не должны записываться в приемник. Если настройка не указана, то никакие события не исключаются. Если настройка указана вместе сinclude, то сначала список событий определяется настройкойinclude, а потом из него исключаются события, указанные вexclude. Рекомендуется не использовать совместно обе настройкиincludeиexclude, а применять только что-то одно;logger– необязательная настройка – указывается только для приемника с типом log. Позволяет определить имя логгера. Если настройка не задана, то запись производится в логгер с именем AUDIT;name– необязательная настройка – указывается для приемников с типом log. Имя приемника указывается, так как для этого приемника можно настроить несколько приемников. Если настройка не задана, то в качестве имени приемника используется log;
emitAtLeastOneOf– необязательная настройка – указывается список приемников, достаточно записи событий в любой из которых, чтобы операция считалась успешной;emitToAllOf– необязательная настройка – указывается список приемников, по которым обязательно должно быть получено подтверждение успешной записи события, чтобы операция считалась успешной. Если настройкиemitAtLeastOneOfиemitToAllOfне заданы, то обязательно подтверждение от всех настроенных приемников;emitTimeoutInSec– необязательная настройка – определяет максимальное время отклика от приемника в ответ на запрос записи события. Если настройка не задана, то ожидание 60 секунд.
Пример настроек записи аудита одновременно в лог, в СУБД и в Kafka:
"audit": {
"emitters": [
{
"type": "log",
"name": "users-log",
"enabled": true,
"logger": "AUDIT",
"exclude": ["admin_added", "admin_pswd_changed", "admin_removed", "admin_roles_changed",
"config_changed"]
},
{
"type": "log",
"name": "admins-log",
"enabled": true,
"logger": "AUDITADMIN",
"include": ["admin_added", "admin_pswd_changed", "admin_removed", "admin_roles_changed",
"config_changed"]
},
{
"type": "audit-store",
"enabled": true
},
{
"type" : "kafka",
"enabled": true,
"name" : "kafka",
"include": ["login"],
"bootstrapServers" : ["infra-kfk01:9443"],
"topic" : "blitz_audit",
"securityProtocol" : "SSL",
"ssl" : {
"enabledProtocols" : ["TLSv1.2,TLSv1.3"],
"keyStore" : {
"password" : "CHANGE-ME",
"path" : "/etc/blitz-config/bip-app01.jks",
"type" : "JKS"
},
"trustedStore" : {
"password" : "CHANGE-ME",
"path" : "/etc/blitz-config/ca.jks",
"type" : "JKS"
}
},
}
],
"emitAtLeastOneOf": ["users-log","admins-log","kafka"],
"emitToAllOf": ["audit-store"],
"emitTimeoutInSec": 30
}
Возможные типы событий безопасности:
blitz_keeper_access_permitted– передача запроса на целевой сервер разрешенаblitz_keeper_access_denied– передача запроса на целевой сервер запрещена