Конфигурация WebDAV

Настройка сервиса WebDAV выполняется с использованием конфигурационного файла.

Файл определяет параметры:

  • сетевого взаимодействия;
  • подключения к сервису ЗАКРОМА.Диск;
  • подключения к сервису блокировок;
  • логирования и производительности.

Полный пример конфигурации

1env: prod 2 3log: 4 level: debug 5 title: zakroma-disk-webdav
Развернутьarrow

Описание параметров

Общие параметры

  • env – режим работы сервиса (dev, test, prod).

Логирование

  • log.level – уровень логирования (debug/info/warn/error/panic/fatal, по умолчанию info);
  • log.title – название приложения в логах. По умолчанию zakroma-disk;
  • log.format – формат логов (json/text, по умолчанию json);
  • log.output – место назначения логов (stdout/stderr, по умолчанию stdout);
  • log.color – использовать ли цветовую разметку в логах (true/false).

HTTP-сервер

  • http.server.address – IP-адрес WebDAV сервера (по умолчанию, 0.0.0.0);
  • http.server.port – порт WebDAV сервера (по умолчанию 80);
  • http.server.concurrency – максимальное число одновременных соединений (по умолчанию 100000);
  • http.server.use_ssl – использовать SSL? (true/false, по умолчанию true);
  • http.server.cert – путь к файлу с сертификатом сервера;
  • http.server.cert_key – путь к файлу с ключом сертификата сервера;
  • http.server.verify_client – проверять ли сертификат клиента. (true/false);
  • http.server.client_ca_cert – сертификат удостоверяющего центра клиентского сертификата.

Аутентификация

  • http.server.auth.type – способ авторизации: spnego или basic;
  • http.server.auth.keytab_path – путь к файлу keytab (используется, если не задан keytab_inline);
  • http.server.auth.keytab_inline – содержимое файла keytab, закодированное в виде строки 16-ричных цифр (используется вместо keytab_path).

Допускается использовать либо keytab_path, либо keytab_inline, но не оба параметра одновременно.

Сервер профилирования

  • http.prof_server.address – адрес. По умолчанию 0.0.0.0;
  • http.prof_server.port – порт для сервера профилирования. Значение по умолчанию 3030.

Подключение к ЗАКРОМА.Диск (dsdrive)

  • dsdrive.hosts – список хостов диска в виде domain:port,…;
  • dsdrive.host_switch_mode – sticky/roundrobin;
  • dsdrive.use_ssl – использовать SSL? (true/false);
  • dsdrive.skip_verification – проверять сертификат сервера? (true/false);
  • dsdrive.cert_server_name – имя сервера ЗАКРОМА.Диска (если не указано, то используется имя сервера из hosts);
  • dsdrive.ca_cert – сертификат удостоверяющего центра сертификата сервера;
  • dsdrive.cert – клиентский сертификат для подключения к серверу Диск (если требуется);
  • dsdrive.cert_key – ключ клиентского сертификата для подключения к серверу Диск (если требуется);
  • dsdrive.max_conn_per_host – максимальное число одновременно активных соединений с dsdrive. Значение по умолчанию 100000;
  • dsdrive.max_conn_duration – максимальная продолжительность жизни соединения;
  • dsdrive.max_idle_conn_duration – максимальная продолжительность жизни неиспользуемого соединения;
  • dsdrive.api_key – ключ, для аутентификации типа direct grant, даже если в dsdrive direct_grant.enabled=false (см. dsdrive);
  • dsdrive.public_key – публичный ключ сервиса dsrive (имеется умолчание).

Подключение к сервису блокировок (dslock)

  • dslock.hosts – список хостов сервиса блокировок в виде domain:port,…;
  • dslock.use_ssl – использовать SSL? (true/false);
  • dslock.skip_verification – Проверять сертификат сервера? (true/false);
  • dslock.cert_server_name – имя сервера блокировок (если не указано, то используется имя сервера из hosts);
  • dslock.ca_cert – сертификат удостоверяющего центра сертификата сервера;
  • dslock.cert – клиентский сертификат для подключения к серверу блокировок (если требуется);
  • dslock.cert_key – ключ клиентского сертификата для подключения к серверу блокировок (если требуется);
  • dslock.max_conn_per_host – масимальное число одновременно активных соединений. Значение по умолчанию 100000;
  • dslock.max_conn_duration – максимальная продолжительность жизни соединения;
  • dslock.max_idle_conn_duration – максимальная продолжительность жизни неиспользуемого соединения;
  • dslock.auth.access_key_id – ID ключа (login) доступа к сервису;
  • dslock.auth.access_key – ключ (password) доступа к сервису.

Примечание

  • Конфигурация задаётся администратором и зависит от инфраструктуры;
  • Адреса сервисов и ключи доступа должны быть определены заранее;
  • Параметры SSL и проверки сертификатов настраиваются в соответствии с требованиями безопасности.