Настройки безопасности для установки#

Настройки безопасности задаются в файле vars.yml перед запуском установки и находятся в разделах:

  1. Настройки ssl сертификатов и их хранилища для SMBX, с которыми будет запускаться брокер:

artemis:
  keyStorePath: ssl/artemis.jks # путь от inventories/_стенд_/ до файла с keyStore
  keyStorePassword: __PLACEHOLDER__ # пароль от keyStore
  keyPassword: __PLACEHOLDER__ # пароль от ключа в хранилище
  trustStorePath: ssl/artemis.jks # путь от inventories/_стенд_/ до файла с trustStore
  trustStorePassword: __PLACEHOLDER__ # пароль от trustStore
  enabled_protocols: TLSv1.2,TLSv1.3 # версии TLS протоколов
  1. Настройки подключения системы мониторинга к SMBX:

artemis:
  jmx_port: 1099 # порт для сбора метрик
  jmx_user: __PLACEHOLDER__ # пользователь для метрик
  jmx_password: __PLACEHOLDER__ # пароль для метрик
  1. Настройка аудита:

artemis:
  audit_configs:
    audit.service.class: ru.sbt.ss.artemis.audit.service.ArtemisLogAuditService # ArtemisLogAuditService или ArtemisHttpAuditService
    audit.service.url: http://url:8080
    audit.service.secret: path/to/encrypt.pass
    audit.service.verify.hostname: "false"
    audit_service_module_id: Artemis_id
    audit_service_module_version: 1.3
    audit.service.metamodel: path/to/audit-metamodel.yml
    audit.service.send.metamodel: "true"
    audit.service.pretty.print: "false"
    audit.service.ignore.errors: "true"
    audit.service.request.timeout.ms: 15000

#    audit.service.ssl.enabled: "false"
#    audit.service.ssl.keystore: /path/to/jks
#    audit.service.ssl.keystore.password: pass
#    audit.service.ssl.key.password: pass
#    audit.service.ssl.truststore: /path/to/jks
#    audit.service.ssl.truststore.password: pass
#    audit.service.ssl.protocol: TLSv1.2
#
#    audit.service.redelivery.enabled: "true"
#    audit.service.redelivery.interval.ms: 30000
#    audit.service.redelivery.initial.delay.ms: 10000
#    audit.service.redelivery.buffers: file-buffer, memory
#    audit.service.redelivery.file-buffer.type: file
#    audit.service.redelivery.file-buffer.file.name: /logs/audit-buffer.log
#    audit.service.redelivery.file-buffer.max.size: 100m
#    audit.service.redelivery.memory.type: queue
#    audit.service.redelivery.memory.max.size: 100m
#
#    audit.service.dead.letter.redelivery.buffers: file-buffer-deadletter
#    audit.service.dead.letter.redelivery.file-buffer-deadletter.type: file
#    audit.service.dead.letter.redelivery.file-buffer-deadletter.file.name: /logs/audit-deadletter.log
#    audit.service.dead.letter.redelivery.file-buffer-deadletter.max.size: 10
  1. Настройки HashiCorp Vault для аудита:

artemis:
  audit_configs:
#  vault_audit_configs: # использование Vault для аудита
#    ssl.keystore.location: ssl/audit-vault-keystore.jks # Расположение хранилища сертификатов, полученных из HashiCorp Vault
#    ssl.keystore.mode: 600 # Права доступа к файлу хранилища сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.truststore.location: ssl/audit-vault-truststore.jks # Расположение хранилища доверенных сертификатов, полученных из HashiCorp Vault
#    ssl.truststore.mode: 600 # Права доступа к файлу хранилища доверенных сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.vault.address: "https://my.vault:8200/" # Адрес подключения к HashiCorp Vault, обязательный параметр
#    ssl.vault.tls.enable: "true" #  Включение протокола TLS при подключении к HashiCorp Vault
#    ssl.vault.tls.keystore.location: ssl/vault-client.jks # Расположение хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.keystore.password: pass # Пароль от хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.key.password: pass # Пароль от сертификата для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.location: ssl/vault-client.jks # Расположение хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.password: pass # Пароль от хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.auth.type: APPROLE # Тип алгоритма аутентификации в HashiCorp Vault: approle, token, userpass, certificate
#    ssl.vault.auth.role.id: __PLACEHOLDER__ # Идентификатор роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.auth.secret.id: __PLACEHOLDER__ # Секрет роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.pki.role.name: __PLACEHOLDER__ # Имя роли в движке выпуска сертификатов в HashiCorp Vault, обязательный параметр
#    ssl.vault.pki.common.name: __PLACEHOLDER__ # Значение поля CN в выпускаемом сертификате
#    ssl.vault.secret.path: __PLACEHOLDER__ # Путь до Key-Value хранилища с паролями для хранилищ сертификатов
#    ssl.vault.secret.key: key # Имя поля с паролем от ключа
#    ssl.vault.secret.keystore: keystore # Имя поля с паролем от хранилища сертификатов ssl.keystore.location
#    ssl.vault.secret.truststore: truststore # Имя поля с паролем от хранилища сертификатов ssl.truststore.location
#    ssl.vault.engine.version: 1 # Версия Key-Value хранилища секретов
#  vault_configs: # использование Vault для брокера
#    ssl.keystore.location: ssl/artemis-vault-keystore.jks # Расположение хранилища сертификатов, полученных из HashiCorp Vault
#    ssl.keystore.mode: 600 # Права доступа к файлу хранилища сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.truststore.location: ssl/artemis-vault-truststore.jks # Расположение хранилища доверенных сертификатов, полученных из HashiCorp Vault
#    ssl.truststore.mode: 600 # Права доступа к файлу хранилища доверенных сертификатов в POSIX формате, "644" или "w-r--r--"
#    ssl.vault.address: "https://my.vault:8200/" # Адрес подключения к HashiCorp Vault, обязательный параметр
#    ssl.vault.tls.enable: "true" #  Включение протокола TLS при подключении к HashiCorp Vault
#    ssl.vault.tls.keystore.location: ssl/vault-client.jks # Расположение хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.keystore.password: pass # Пароль от хранилища сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.key.password: pass # Пароль от сертификата для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.location: ssl/vault-client.jks # Расположение хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.tls.truststore.password: pass # Пароль от хранилища доверенных сертификатов для подключения к HashiCorp Vault
#    ssl.vault.auth.type: APPROLE # Тип алгоритма аутентификации в HashiCorp Vault: approle, token, userpass, certificate
#    ssl.vault.auth.role.id: __PLACEHOLDER__ # Идентификатор роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.auth.secret.id: __PLACEHOLDER__ # Секрет роли приложения при ssl.vault.auth.type=approle
#    ssl.vault.pki.role.name: __PLACEHOLDER__ # Имя роли в движке выпуска сертификатов в HashiCorp Vault, обязательный параметр
#    ssl.vault.pki.common.name:__PLACEHOLDER__ # Значение поля CN в выпускаемом сертификате
#    ssl.vault.secret.path: __PLACEHOLDER__ # Путь до Key-Value хранилища с паролями для хранилищ сертификатов
#    ssl.vault.secret.key: key # Имя поля с паролем от ключа
#    ssl.vault.secret.keystore: keystore # Имя поля с паролем от хранилища сертификатов ssl.keystore.location
#    ssl.vault.secret.truststore: truststore # Имя поля с паролем от хранилища сертификатов ssl.truststore.location
#    ssl.vault.engine.version: 1 # Версия Key-Value хранилища секретов

Пример заполненного файла vars.yml приведен в разделе Пример заполненного файла vars.yml.

В процессе установки все настройки безопасности, заданные первично в файле vars.yml, попадают в конфигурационные файлы broker.xml (основные настройки брокера), audit.log (настройки аудита), config/encrypt.pass (ключ для шифрования паролей), где могут быть изменены вручную. Затем необходимо перезапустить SMBX, чтобы новые настройки безопасности применились.

Настройки безопасности окружения и перечень платформенных (дополнительных внешних) продуктов, используемых для установки, настройки и контроля в SMBX выбираются клиентом при разработке конечной интеграции, исходя из характера обрабатываемой в ней информации и иных требований информационной безопасности, предъявляемых к ней.