ervu-lkrp-ul/config.md

138 lines
15 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Конфигурация
## Подключение базы данных
- `DB_APP_USERNAME` - логин пользователя для подключения к базе данных.
- `DB_APP_PASSWORD` - пароль пользователя для доступа к базе данных.
- `DB_APP_HOST` - адрес сервера базы данных.
- `DB_APP_PORT` - порт, на котором осуществляется подключение к базе данных.
- `DB_APP_NAME` - имя базы данных, к которой необходимо подключиться.
## Аутентификация через ЕСИА
- `ESIA_SCOPES` - область доступа, позволяющие получить данные о пользователе. Тип данных, к которым система-клиент намерена получить доступ
- `ESIA_ORG_SCOPES` - область доступа, позволяющие получить данные о организации. Тип данных, к которым система-клиент намерена получить доступ
- `ESIA_ORG_SCOPE_URL` - обязательный префикс областей доступа, для получения данных об организации.
- `ESIA_BASE_URI` - базовый url для обращения в ЕСИА.
- `ESIA_CLIENT_ID` - идентификатор системы-клиента (мнемоника системы в ЕСИА указанная прописными буквами)
- `ESIA_REDIRECT_URL` - ссылка, по которой должен быть направлен пользователь
после того, как ЕСИА даст разрешение на доступ к ресурсу.
Важно: `ESIA_REDIRECT_URL` должна содержать полный адрес вплоть до последнего слэша
- https://lkul.ervu.loc/ - правильное значение параметра
- https://lkul.ervu.loc - неправильное значение параметра
- `ESIA_LOGOUT_REDIRECT_URL` - ссылка, по которой должен быть направлен пользователь после logout-a
Важно: `ESIA_LOGOUT_REDIRECT_URL` должна содержать полный адрес вплоть до последнего слэша:
> - https://lkul.ervu.loc/home.html - правильное значение параметра
> - https://lkul.ervu.loc - неправильное значение параметра
- `ESIA_UPLOAD_DATA_ROLE` - мнемоника группы, для роли "Сотрудник, ответственный за военно-учетную работу".
- `SIGN_URL` - url для подписания с помощью КриптоПро секрета клиента, необходимого для аутентификации через ЕСИА.
- `ESIA_CLIENT_CERT_HASH` - параметр, содержащий хэш сертификата (fingerprint сертификата) системы-клиента в hexформате.
- `SIGN_VERIFY_URL` - url для отправки маркера доступа от ЕСИА на верификацию
- `ESIA_ISSUER_URL` - организация, выпустившая маркер. Нужен для верификации маркера доступа от ЕСИА
- `ESIA_MARKER_VER` - версия маркера. Нужен для верификации маркера доступа от ЕСИА
## Взаимодействие с ЕСНСИ в части получения справочника ОКОПФ
- `ESNSI_OKOPF_URL` - url который обращается к еснси для получения справочника и скачивает данные спровочников организации в виде заархивированного json файла.
- `ESNSI_OKOPF_CRON_LOAD` - настройка, которая указывет расписание для загрузки справочника окопф и
сохранение данных по справкам в БД
- `ESNSI_OKOPF_RETRY_DELAY_LOAD` - настройка, которая указывет на повторную попытку загрузить
справочник окопф с задержкой. По умолчанию задержка по времени 30000 ms
- `ESNSI_OKOPF_RETRY_MAX_ATTEMPTS_LOAD` - настройка, которая указывет на максимальное кол-во попыток
повторно загрузить справочник окопф. По умолчанию 3 попытки
- `ESNSI_OKOPF_CONNECT_TIMEOUT`
- `ESNSI_OKOPF_READ_TIMEOUT`
## Общие параметры Kafka
- `ERVU_KAFKA_BOOTSTRAP_SERVERS` - список пар хост:порт, использующихся для установки первоначального соединения с кластером Kafka
- `ERVU_KAFKA_SECURITY_PROTOCOL` - протокол, используемый для взаимодействия с брокерами
- `ERVU_KAFKA_SASL_MECHANISM` - механизм SASL, используемый для клиентских подключений
- `KAFKA_AUTH_SASL_MODULE` - имя класса для входа в систему для SASL-соединений в формате, используемом конфигурационными файлами JAAS
- `ERVU_KAFKA_GROUP_ID` - идентификатор группы потребителей, который отвечает за создание группы для объединения нескольких потребителей
- `ERVU_KAFKA_USERNAME` - пользователь для подключения к Kafka
- `ERVU_KAFKA_PASSWORD` - пароль для подключения к Kafka
- `ERVU_KAFKA_REPLY_TIMEOUT` - определяет, сколько времени Kafka будет ожидать ответа от потребителя после отправки сообщения. Значение задается в секундах
## Взаимодействие с WebDav
- `WEBDAV_URLS` - список url для подключения к WebDav
- `WEBDAV_USERNAME` - логин пользователя для подключения к WebDav
- `WEBDAV_PASSWORD` - пароль пользователя для подключения к WebDav
- `WEBDAV_BAD_SERVERS_CACHE_EXPIRE_SECONDS` - время жизни кэша адресов недоступных серверов WebDav (секунды)
- `WEBDAV_CLEANUP_CRON` - крон по очистке WebDav
- `WEBDAV_RETRY_DELAY` - количество попыток по операциям с файлами WebDav
- `FILE_WEBDAV_LIFETIME_SECONDS` - время жизни файла в WebDav (секунды)
- `FILE_WEBDAV_EXTENSIONS` - список расширений файлов, удаляемых с WebDav
## Взаимодействие с Kafka audit
- `AUDIT_KAFKA_BOOTSTRAP_SERVERS` - список пар хост:порт, использующихся для установки первоначального соединения с кластером Kafka
- `AUDIT_KAFKA_SECURITY_PROTOCOL` - протокол, используемый для взаимодействия с брокерами
- `AUDIT_KAFKA_LOGIN_MODULE` - имя класса для входа в систему для SASL-соединений в формате, используемом конфигурационными файлами JAAS
- `AUDIT_KAFKA_USERNAME` - пользователь для подключения к Kafka
- `AUDIT_KAFKA_PASSWORD` - пароль для подключения к Kafka
- `AUDIT_KAFKA_SASL_MECHANISM` - механизм SASL, используемый для клиентских подключений
- `AUDIT_KAFKA_ENABLED` - флажок для включения записи аудита в кафку
## Взаимодействие с Kafka AV
- AV_KAFKA_GROUP_ID
- `AV_KAFKA_BOOTSTRAP_SERVERS` -
- `AV_KAFKA_SECURITY_PROTOCOL` -
- `AV_KAFKA_SASL_MECHANISM` -
- `AV_KAFKA_USERNAME` -
- `AV_KAFKA_PASSWORD` -
## Топики Kafka
| Наименование | Описание | Пишет | Читает | Имя конфигурации |
|------------------------------------|--------------------------------------------------------------------------------------------|----------------------------|---------------------------------------------------|----------------------------------|
| ervu.organization.request | топик для записи данных об организации, для получения id организации из ЕРВУ | ervu-lkrp-ul-backend | ervu-organization-registry | ERVU_KAFKA_ORG_REQUEST_TOPIC |
| ervu.organization.response | топик для чтения id организации из ЕРВУ | ervu-organization-registry | ervu-lkrp-ul-backend | ERVU_KAFKA_ORG_REPLY_TOPIC |
| ervu.organization.journal.request | топик для записи запроса для получения данных по журналу взаимодействия | ervu-lkrp-ul-backend | ervu-organization-registry | ERVU_KAFKA_JOURNAL_REQUEST_TOPIC |
| ervu.organization.journal.response | топик для чтения данных по журналу взаимодействия | ervu-organization-registry | ervu-lkrp-ul-backend | ERVU_KAFKA_JOURNAL_REPLY_TOPIC |
| ervu.lkrp.excerpt.request | топик для записи запроса для получения выписки по журналу взаимодействия | ervu-lkrp-ul-backend | ervu-organization-registry | ERVU_KAFKA_EXCERPT_REQUEST_TOPIC |
| ervu.lkrp.excerpt.response | топик для чтения выписки по журналу взаимодействия. Содержит ссылку на S3 с файлом выписки | ervu-organization-registry | ervu-lkrp-ul-backend | ERVU_KAFKA_EXCERPT_REPLY_TOPIC |
| ervu.lkrp.av-fileupload | топик для записи данных по файлу для перекладчика | ervu-lkrp-ul-backend | ervu-lkrp-av | AV_KAFKA_DOWNLOAD_REQUEST |
| ervu.lkrp.av-fileupload-status | топик для чтения статусов файла, полученных от перекладчика | ervu-lkrp-av | ervu-lkrp-ul-backend | AV_KAFKA_DOWNLOAD_RESPONSE |
| ervu.lkrp.auth.events | топик для отправки аудита в журнал авторизации | ervu-lkrp-ul-backend | ervu-lkrp-journal-service | AUDIT_KAFKA_AUTHORIZATION_TOPIC |
| ervu.lkrp.action.events | топик для отправки аудита в журнал действий пользователя | ervu-lkrp-ul-backend | ervu-lkrp-journal-service | AUDIT_KAFKA_ACTION_TOPIC |
| ervu.lkrp.download.request | топик для отправки аудита в журнал обмена файлами | ervu-lkrp-ul-backend | ervu-organization-registry, ervu-validate-recruits | AUDIT_KAFKA_FILE_UPLOAD_TOPIC |
| ervu.lkrp.import.file | топик для отправки аудита в журнал загрузки ЮЛ и ФЛ | ervu-lkrp-ul-backend | ervu-lkrp-journal-service | AUDIT_KAFKA_FILE_DOWNLOAD_TOPIC |
| ervu.lkrp.download.request | топик для записи данных по загруженным файлам | ervu-lkrp-ul-backend | ervu-organization-registry, ervu-validate-recruits| ERVU_KAFKA_DOWNLOAD_REQUEST |
| ervu.lkrp.download.response | топик для чтения данных по загруженным файлам после обработки ерву | ervu-validate-recruits | ervu-lkrp-ul-backend | ERVU_KAFKA_DOWNLOAR_RESPONSE |
| ervu.lkrp.av-clear-s3 | топик для отчистки фалов из s3 | ervu-lkrp-ul-backend | ervu-lkrp-av | AV_KAFKA_CLEAR_S3 |
## Прочее
- `COOKIE_PATH` - путь для access token
- `COOKIE_SECURE` - параметр secure
- `COOKIE_DOMAIN` - домен для cookie
- `COOKIE_SAME_SITE` - параметр SameSite. Одно из значений: Strict, Lax, None
- `WEBBPM_SECURITY_TOKEN_SECRET_KEY` - секретный ключ для создания JWT токена. Значение должно быть в Base64 кодировке.
- `DB.JOURNAL.EXCLUDED.STATUSES` - статусы файла, которые необходимо исключить при получении данных по журналу взаимодействия из базы данных приложения
- `ERVU_FILE_UPLOAD_MAX_FILE_SIZE` - определяет максимальный размер загружаемого файла в байтах. Указывает предел размера для каждого индивидуального файла, который может быть загружен. Если файл превышает этот размер, загрузка будет прервана, и может быть вызвано исключение.
- `ERVU_FILE_UPLOAD_MAX_REQUEST_SIZE` - устанавливает максимальный общий размер всех файлов в одном многозадачном запросе в байтах. Это ограничение на весь запрос, включающий данные и файлы. Если общий размер запроса превышает этот параметр, загрузка файлов будет остановлена.
- `ERVU_FILE_UPLOAD_FILE_SIZE_THRESHOLD` - указывает размер (в байтах), при достижении которого файл будет записан во временное хранилище на диск. Это позволяет улучшить производительность, исключая непосредственную запись мелких файлов на диск, если они не превышают указанного порога. Файлы, меньшие этого значения, могут быть сохранены в памяти.
- `ERVU_FILE_UPLOAD_OGRN_CHECK_ENABLED` - флаг активации проверки ОГРН организаций при загрузке файлов