Что это значит

Сервисы RX подписывают внутренние токены и cookie одним сертификатом защиты данных (Data Protection), который задаётся параметрами DATA_PROTECTION_CERTIFICATE_THUMBPRINT, DATA_PROTECTION_CERTIFICATE_FILE и DATA_PROTECTION_CERTIFICATE_FILE_PASSWORD. Если у сервисов разные сертификаты, один не может проверить подпись другого: сервис хранилищ пишет Signature validation failed. Unable to match key, а вызывающий сервис получает 401 unauthorized.

По справке вендора так перестаёт работать электронный обмен с контрагентами: фоновый процесс получения сообщений в Worker получает 401. Тот же параметр, по справке, нужен онлайн-редактору: без него сервис не может проверить cookie пользователя.

Как проверить

На всех серверах сравнить значения DATA_PROTECTION_CERTIFICATE_THUMBPRINT, DATA_PROTECTION_CERTIFICATE_FILE и DATA_PROTECTION_CERTIFICATE_FILE_PASSWORD в конфигурации всех сервисов и проверить, что файл сертификата есть по указанному пути.

Что сделать

  1. Выровнять параметры на всех серверах и во всех сервисах.
  2. Если файла сертификата нет, скопировать его с другого сервера или сгенерировать командой ./do.sh generate_data_protection_cert_from_config (Linux) или do generate_data_protection_cert_from_config (Windows).
  3. Перезапустить сервисы.