Настройки почты в конфигурационном файле модуля

Раздел содержит настройки сервиса Workflow для обращения к почтовому серверу:

  • MS Exchange

    Не поддерживается в Linux.
  • SMTP/POP3

  • MS Exchange Web Services — только MS Exchange 2007 SP1 или MS Exchange 2010.

Модуль Управление процессами поддерживает работу в мультитенантном режиме.

При первоначальной установке модуля (не обновлении) выполните следующие действия, чтобы задать настройки для обращения к почтовому серверу:
  1. В конфигурационном файле модуля Управление процессами найдите параметр "ServiceUrl" — адрес сервера Docsvision.

  2. Найдите параметр "WorkflowServer" и задайте в нём настройки почты.

    Настройка параметров работы модуля Управление процессами осуществляется в разделе настроек WorkflowServer в конфигурационном файле модуля /usr/lib/docsvision/workflow/appsettings.json.

    Раздел настроек почты в конфигурационном файле модуля выглядит следующим образом:

      "DocsVision": {
        "Workflow": {
          "ServiceUrl": "http://dvserver.domain.com:5000/api/v1", (1)
          "BaseName": "alias", (2)
          "WorkflowServer": {
            "ServiceID":"http://workflow.domain.com:5099", (3)
            "MemorySize": "1000",
    
            "UseCDOSys": "1", (4)
            "ServerAddress": "account@domain.com", (5)
    
            "Pop3Server": "pop3.domain.com", (6)
            "Pop3Authenticate": 0, (7)
            "Pop3UserName": "account@domain.com", (8)
            "Pop3Password": "password", (9)
            "Pop3Port": 110, (10)
            "Pop3Timeout": 30, (11)
            "Pop3UseSsl": 0, (12)
            "POP3NoCertificateRevocationCheck": 0, (13)
    
            "SmtpServer": "smtp.domain.com", (14)
            "SmtpAuthenticate": "1", (15)
            "SmtpUsername": "account@domain.com", (16)
            "SmtpPassword": "password", (17)
            "SmtpPort": "465", (18)
            "SmtpTimeout": 30, (19)
            "SmtpUseSsl": "0", (20)
    
            "WebAutodiscoverURL": "http://domain.com", (21)
            "WebUserName": "account@domain.com", (22)
            "WebPassword": "password", (23)
            "WebServiceVersion": 0, (24)
            "WebUseDefaultCredentials": 0 (25)
          }
        }
      },
    1 ServiceUrl — адрес сервера Docsvision. Обратите внимание на api/v1 в адресе.
    2 BaseName — псевдоним базы данных, для обработки которой предназначается сервис. Должен совпадать с псевдонимом подключенной базы в конфигурации сервера Docsvision.
    3 ServiceID — адрес Сервиса управления бизнес-процессами. Адрес обязательно должен совпадать с тем, что будет указан в Консоли настройки Docsvision. Сервис управления бизнес-процессами должен быть доступен по данному адресу "снаружи". См. подробнее "Добавить обработчик бизнес-процессов в Docsvision".
    4 UseCDOSys — тип почтового сервера: 1 — SMTP/POP3, 2 — Exchange Web Services.
    5 ServerAddress — укажите адрес электронной почты, который будет использован сервером управления процессами, например, для пересылки электронных писем исполнителям заданий при использовании офлайн-маршрутизации.
    6 Pop3Server — имя POP3 сервера.
    7 Pop3Authenticate — тип аутентификации пользователя POP3:
    • 0 — Простая — логин и пароль пользователя указывается явно.

    • 1 — NTLM — доступ осуществляется от лица текущего пользователя (не поддерживается в Linux).

    8 Pop3UserName — имя пользователя для доступа к почтовому ящику POP3, если используется тип аутентификации Простая.
    9 Pop3Password — пароль пользователя для доступа к почтовому ящику POP3, если используется тип аутентификации Простая.
    10 Pop3Port — в случае нестандартной конфигурации POP3 сервера можно указать Порт POP3, который будет использован для подключения к серверу.
    11 Pop3Timeout — время ожидания ответа POP3 сервера в секундах.
    12 Pop3UseSsl — флаг SSL — при наличии флага допускается использование протокола защищенного обмена данными SSL: 0 — не использовать, 1 - использовать.
    13 POP3NoCertificateRevocationCheck — настройка позволяет отключить проверку отозванности сертификата на уровне клиента POP3. Возможные значения: 1 — проверка отключена, сертификат не проверяется, 0 — проверка выполняется всегда, значение по умолчанию.
    14 SmtpServer — имя SMTP-сервера.
    15 SmtpAuthenticate — тип аутентификации пользователя:
    • 0 — Анонимная.

    • 1 — Простая — логин и пароль пользователя указывается явно.

    • 2 — NTLM — доступ осуществляется от лица текущего пользователя (не поддерживается в Linux).

    16 SmtpUsername — имя пользователя для доступа к почтовому ящику SMTP, если используется тип аутентификации Простая.
    17 SmtpPassword — пароль для доступа к почтовому ящику SMTP, если используется тип аутентификации Простая.
    18 SmtpPort — в случае нестандартной конфигурации SMTP сервера можно указать Порт SMTP, который будет использован для подключения к серверу и отправки писем.
    19 SmtpTimeout время ожидания ответа SMTP сервера в секундах.
    20 SmtpUseSsl — флаг SSL — при наличии флага допускается использование протокола защищенного обмена данными SSL.
    SSL при работе по SMTP поддерживается только как расширение службы SMTP для Secure SMTP через TLS. Подключение SMTP/SSL не поддерживается. Поэтому, вместо порта 465, который используется по умолчанию для SMTP/SSL, следует указывать порт 587.
    21 WebAutodiscoverURL — адрес электронной почты, зарегистрированной в веб-службе Exchange и ассоциированной с учетной записью сервиса Workflow или явный адрес сервера.

    Workflow использует функцию автообнаружения точки подключения к Exchange Web Services по адресу электронной почты, указанной в поле Адрес сервера для подключения. Если указан явный адрес сервера, автообнаружение будет отключено. См. дополнительные настройки автообнаружения ниже.

    22 WebUserName — имя пользователя для аутентификации MS Exchange Web Services, если используется тип аутентификации Простая.
    23 WebPassword — пароль пользователя для аутентификации MS Exchange Web Services, если используется тип аутентификации Простая.
    24 WebServiceVersion — версия сервиса: 0 - 2007 SP1, 1 - 2010.
    25 WebUseDefaultCredentials — тип аутентификации пользователя:
    • 0 — Простая — логин и пароль пользователя указывается явно.

    • 1 — NTLM — доступ осуществляется от лица текущего пользователя (не поддерживается в Linux).

  3. Чтобы все выполненные изменения вступили в силу, сохраните их и перезапустите службу dvworkflow.

По умолчанию в конфигурационном файле указаны пустые параметры, например null или 0. Администратор должен самостоятельно настроить необходимые параметры.

Выбор типа отправки писем (локальный или удаленный) больше не поддерживается.

Разрешение перенаправления при автообнаружении конечной точки Exchange Web Services

При подключении почтового шлюза Workflow к серверу Exchange Web Services используется функция автообнаружения конечной точки EWS, подробнее см. на сайте Microsoft.

По умолчанию, если сервер автообнаружения EWS возвращает статус, перенаправляющий шлюз к почте Workflow на другой адрес подключения, автообнаружение будет завершено с ошибкой.

Чтобы разрешить такие перенаправления:
  1. Добавьте в конфигурационном файле модуля в параметр WorkflowServer дополнительный параметр: WebAllowRedirect со значением 1:

      "Docsvision": {
        "Workflow": {
          "WorkflowServer": {
            "WebAllowRedirect": 1
          }
        }
      },
  2. Перезапустите службу dvworkflow.

  3. Если в организации используется кластер Workflow, повторите настройку на всех узлах.

    Обратите внимание, настройки для каждой БД хранятся в отдельных параметрах.

Функция автообнаружения EWS может быть отключена, если указать прямой адрес EWS. Когда при настройке мониторинга почты в поле Адрес сервера для подключения указана почта, функция автообнаружения конечной точки EWS будет работать как раньше. Когда в поле указан явный адрес, автообнаружение будет отключено и будет использован указанный адрес.

Авторизация через OAuth при использовании Exchange Web Services

Microsoft больше не поддерживает обычную проверку подлинности в Exchange Online. В связи с этим рекомендуется использовать авторизацию через OAuth при использовании Exchange Web Services.

Индивидуальная настройка шлюза на уровне UI БП при этом не поддерживается.

Чтобы использовать OAuth с EWS выполните следующие настройки:
  1. Настройте приложение в требуемом тенанте Azure AD согласно инструкции.

    Когда есть варианты delegated authentication или app-only authentication, нужно выбирать вариант app-only authentication.

    В процессе настройки, необходимо сохранить три значения:
    • Идентификатор созданного приложения — идентификатор клиента, в настройках приложения.

    • Идентификатор каталога — идентификатор тенанта, в настройках приложения.

    • Клиентский секрет из раздела Сертификаты и секреты.

  2. В конфигурационном файле, в параметре Worfklow создайте дополнительный параметр Tenants, у подчинённого параметра с именем нужной БД задайте следующие настройки:

      "Docsvision": {
        "Workflow": {
          "Tenants": {
            "docsvisiondb": {
              "WebUseOAuth": 1, (1)
              "WebOauthClientId": null, (2)
              "WebOauthTenantId": null, (3)
              "WebOauthExtData": null (4)
            }
          }
        }
      },
    1 WebUseOAuth — использовать авторизацию через OAuth.
    2 WebOauthClientId — идентификатор созданного приложения.
    3 WebOauthTenantId — идентификатор каталога (идентификатор тенанта).
    4 WebOauthExtData — клиентский секрет.
  3. В консоли настроек Docsvision, в разделе Управление процессами включите использование Exchange Web Services с использованием актуального адреса электронной почты, соответствующего нужному почтовому ящику.

При использовании OAuth, в настройке Адрес сервера для подключения (аналогично настройке WebAutodiscoverURL) должен быть указан адрес email. Использование прямого адреса для подключения в этом случае не допускается.