Настройка интеграций#
Secret Management (SecMan)#
Secret Management (SecMan) используется для управления доступом к конфиденциальным данным, таких как сертификаты, ключи, секреты, и их безопасного хранения и использования.
Интеграция c SecMan работает следующим образом:
Загрузите необходимые секреты, например пароли, в систему SecMan в KV engine.
Получите параметры для аутентификации в SecMan с использованием механизма AppRole (подробнее о нем написано ниже в разделе Предварительная настройка).
Считайте секреты и сертификаты. Секреты не сохраняются на локальном диске узла.
Подробное описание интеграции приведено в документе Руководство по работе с SecMan.
Компонент «Единый коллектор телеметрии» (COTE) продукта Platform V Monitor#
Компонент COTE является внешней системой хранения событий, значимых для расследования инцидентов информационной безопасности.
Текущая реализация с компонентом COTE осуществляется с помощью подключения через REST API в соответствии с требованиями (смотрите документацию на компонент COTE).
Включение аудита#
В конфигурационный файл
KAFKA_DIR/config/server.propertiesдобавьте строку:kafka.se.audit.enable=trueгде
kafka.se.audit.enable— глобальное включение аудита;Для работы аудита через компонент COTE укажите провайдер аудита
kafka.audit.provider.TsAuditProviderи задайтеsystem.idв конфигурационном файлеKAFKA_DIR/config/server.properties:system.id=Kafka SE kafka.se.audit.provider=kafka.audit.provider.TsAuditProvider kafka.se.audit.provider.tsaudit.model.url=MODEL_URL kafka.se.audit.provider.tsaudit.event.url=EVENT_URLгде
system.id— имя системы для идентификации в компоненте COTE.Для интеграции c UI в
kafka-ui.propertiesукажите настройки для отправки событий через REST API в компонент COTE:для подключения по HTTP:
corax.ui.audit.enable=true corax.ui.audit.system.id=KafkaUI corax.ui.audit.model.url=http://{tsAuditHost}:{tsAuditPort}/v1/metamodel corax.ui.audit.event.url=http://{tsAuditHost}:{tsAuditPort}/v1/eventдля подключения по HTTPs:
corax.ui.audit.enable=true corax.ui.audit.system.id=KafkaUI corax.ui.audit.model.url=https://{tsAuditHost}:{tsAuditPort}/v1/metamodel corax.ui.audit.event.url=https://{tsAuditHost}:{tsAuditPort}/v1/event corax.ui.audit.ssl.keystore.location=/path/to/keystore.jks corax.ui.audit.ssl.keystore.password=password corax.ui.audit.ssl.truststore.location=/path/to/truststore.jks corax.ui.audit.ssl.truststore.password=password corax.ui.audit.ssl.endpoint.identification.algorithm=all
Пример настройки включения logger в файле
log4j.propertiesдля записи в локальный audit-log файл:log4j.appender.auditFileAppender = ru.sbrf.kafka.log4j.RollingAndCompressFileAppender //включение режима записи rolling update log4j.appender.auditFileAppender.File = ${kafka.logs.dir}/kafka-audit.log //путь к лог-файлу log4j.appender.auditFileAppender.layout = org.apache.log4j.PatternLayout log4j.appender.auditFileAppender.layout.ConversionPattern = [%d] %p %m (%c)%n //формат даты и времени log4j.logger.kafka.audit.provider.LogAuditProvider = INFO, auditFileAppender //уровень логирования log4j.appender.auditFileAppender.MaxBackupIndex=10 log4j.appender.auditFileAppender.MaxFileSize=100MB log4j.additivity.kafka.audit.provider.LogAuditProvider=falseВнимание
Для логирования ZooKeeper необходим отдельный файл настроек log4j.
Список всех полей настроек файла KAFKA_DIR/config/server.properties:
Название |
Описание |
Значения |
|---|---|---|
kafka.se.audit.enable |
Включение аудита |
true |
kafka.se.audit.provider |
Список имен классов-обработчиков событий, разделенных запятыми |
«className1,className2,className3,…» |
system.id |
Имя системы, которое будет указываться при возникновении события |
«Kafka SE» |
kafka.se.audit.provider.tsaudit.model.url |
Параметр необходим для подключения TsAuditProvider, чтобы задать url для отправки метамоделей на сервер компонента COTE |
http://localhost:8888/v1/metamodel |
kafka.se.audit.provider.tsaudit.event.url |
Параметр необходим, для подключения TsAuditProvider, чтобы задать url для отправки событий на сервер компонента COTE |
http://localhost:8888/v1/event |
kafka.se.audit.provider.tsaudit.ssl.truststore.location |
Путь к хранилищу доверенных сертификатов |
ssl/kafka.truststore.jks |
kafka.se.audit.provider.tsaudit.ssl.truststore.password |
Пароль к хранилища доверенных сертификатов |
password |
kafka.se.audit.provider.tsaudit.ssl.keystore.location |
Путь к хранилищу ключей |
ssl/client.keystore.jks |
kafka.se.audit.provider.tsaudit.ssl.keystore.password |
Пароль к хранилища ключей |
password |
kafka.se.audit.provider.tsaudit.ssl.endpoint.identification.algorithm |
Алгоритм идентификации end-point для проверки имени хоста сервера с помощью сертификата сервера |
all (или https) |
При необходимости шифрования паролей к хранилищу доверенных сертификатов и хранилищу ключей добавьте поля (по аналогии с шифрованием паролей в конфигурации):
Название |
Описание |
Пример значения |
|---|---|---|
kafka.se.audit.provider.tsaudit.security.encoding.class |
Класс для расшифровки пароля |
ru.sbrf.kafka.security.SimpleTextPasswordDecoder |
kafka.se.audit.provider.tsaudit.security.encoding.key |
Ключ шифрования |
hello_world |
kafka.se.audit.provider.tsaudit.security.encoding.salt |
Соль-провайдер |
ru.sbrf.kafka.security.FileSaltProvider |
kafka.se.audit.provider.tsaudit.security.encoding.salt.location |
Файл с солью |
config/salt.txt |
kafka.se.audit.provider.tsaudit.ssl.truststore.password.encrypted |
Зашифрованный пароль |
pass$2word |
kafka.se.audit.provider.tsaudit.ssl.keystore.password.encrypted |
Зашифрованный пароль |
pass$2word |
Для зашифровки пароля используйте утилиту crx-encoding.sh, которая находится в папке KAFKA_DIR/bin. Подробное описание приведено в документе «Руководство по безопасности», раздел «Шифрование паролей в конфигурациях».
Примечание
Если компонент COTE недоступен, то при включенном logger события аудита будут записаны в локальный audit-log файл на брокере.
Пример конфигурационного файла для включения аудита через компонент COTE:
#########################[ AUDIT ]#################################
kafka.se.audit.enable=true
system.id=Kafka SE
kafka.se.audit.provider=kafka.audit.provider.TsAuditProvider
kafka.se.audit.provider.tsaudit.model.url=http://localhost:8888/v1/metamodel
kafka.se.audit.provider.tsaudit.event.url=http://localhost:8888/v1/event
Внимание
Для отправки сообщений аудита одновременно в компонент COTE и в лог-файл, в качестве провайдера аудита в файле KAFKA_DIR/config/server.properties укажите kafka.se.audit.provider = kafka.audit.provider.TsAuditProvider,kafka.audit.provider.LogAuditProvider.
Подробное описание интеграции приведено в разделе Интеграция с компонентом «Единый коллектор телеметрии» (COTE) продукта Platform V Monitor.