Как настроить бесшовную интеграцию 1С:Документооборота с аутентификацией ОС и почему она не работает из коробки

Программист 1С v8.3 (Управляемые формы) 1С:Документооборот IT и автоматизация бизнеса
← На главную

При внедрении бесшовной интеграции между 1С:ERP (или УТ, КА) и 1С:Документооборотом одной из самых желанных функций является прозрачный вход пользователя без ввода пароля, основанный на учетной записи Windows. Однако на практике многие специалисты сталкиваются с тем, что в клиент-серверном варианте работы эта схема перестает функционировать. Разберем подробно, почему так происходит, и какие современные способы решения существуют. Для предварительного заведения учетных записей сотрудников можно использовать обработку для загрузки пользователей в 1С:Документооборот из Active Directory.

Анализируем причину проблемы: Ограничение Double Hop

Давайте разберем типичную ситуацию. Пользователь успешно авторизуется в домене и запускает ТонкийКлиент 1С:ERP. Система распознает его через АутентификацияОС. Проблема возникает в тот момент, когда ERP пытается обратиться к веб-сервису 1С:Документооборота (ДО) для получения данных. В клиент-серверной архитектуре этот запрос инициирует не компьютер пользователя напрямую, а СерверПриложений (кластер 1С).

С точки зрения операционной системы Windows происходит так называемый «двойной прыжок» (Double Hop). Первый прыжок — от пользователя к серверу ERP. Второй прыжок — от сервера ERP к серверу ДО. По умолчанию безопасность Windows (протокол NTLM) запрещает передачу полномочий пользователя дальше первого сервера. В итоге запрос к 1С:Документообороту приходит от имени служебной учетной записи, под которой запущен rphost (например, USR1CV8), а не от имени реального сотрудника. Именно поэтому в ЖурналРегистрации мы видим ошибки доступа или требование ввести пароль.

Проанализируем разницу с файловым режимом. В файловом варианте запрос к веб-сервису идет непосредственно с компьютера пользователя, поэтому там АутентификацияОС отрабатывает корректно. Как только мы переходим на SQL и сервер приложений, стандартная схема ломается.

Решение №1: Настройка Kerberos Constrained Delegation (KCD)

Если ваша инфраструктура жестко завязана на Active Directory, единственным способом заставить работать чистую аутентификацию ОС является настройка делегирования Kerberos. Посмотрим на этот процесс по шагам:

  1. Регистрация SPN: Необходимо зарегистрировать Service Principal Names для учетных записей, под которыми работают службы 1С и веб-сервер IIS.
  2. Настройка доверия: В контроллере домена для учетной записи сервера приложений ERP нужно установить флаг "Доверять этому компьютеру для делегирования только определенным службам".
  3. Настройка IIS: На стороне 1С:Документооборота в настройках сайта должен быть включен модуль Windows Authentication, а провайдеры выставлены в порядке Negotiate, NTLM.

В файле web.config на стороне публикации ДО часто требуется включить имперсонализацию:


<system.web>
    <identity impersonate="true"/>
</system.web>

Важно: Этот метод крайне сложен в поддержке и не будет работать для мобильных клиентов или пользователей, подключающихся не из доменной сети (например, через VPN без авторизации в AD). Если подобные ограничения сетевой безопасности делают использование веб-сервисов невозможным, альтернативой становится платформа для создания программных роботов, позволяющая автоматизировать перенос данных через пользовательский интерфейс.

Решение №2: Переход на OpenID Connect (Рекомендуемый способ)

Современная платформа 1С (начиная с версии 8.3.18) предлагает уйти от привязки к протоколам Windows в пользу стандарта OpenID Connect (OIDC). Это позволяет реализовать настоящий Single Sign-On (SSO), который работает везде: в тонком клиенте, браузере и мобильном приложении.

Разберем логику работы этого механизма. Вместо того чтобы передавать "личность" пользователя через сетевые протоколы ОС, системы доверяют общему провайдеру идентификации. Рассмотрим подробнее шаги настройки:

Этот метод полностью снимает проблему "второго прыжка", так как серверу ERP больше не нужно притворяться пользователем перед Windows — он просто предъявляет валидный токен, подписанный доверенным центром.

Решение №3: Использование JWT-токенов в 1С:Документооборот 3.0

В новых версиях 1С:Документооборот 3.0 реализована поддержка JWT (JSON Web Token). Это упрощенный вариант интеграции, где ERP сама может выступать в роли доверенного источника. Проанализируем, как это работает программно:

  1. В настройках интеграции генерируется секретный ключ.
  2. При вызове веб-сервиса ERP формирует структуру данных пользователя и подписывает её этим ключом.
  3. ДО проверяет подпись и авторизует пользователя.

Для программной настройки в коде интеграции могут использоваться объекты типа ТокенДоступа. Это позволяет избежать проблем с регламентными заданиями, которые выполняются на сервере без участия пользователя. В коде это выглядит примерно так:


// Пример логики формирования параметров интеграции
ПараметрыИнтеграции = Новый Структура;
ПараметрыИнтеграции.Вставить("ИспользоватьТокен", Истина);
ПараметрыИнтеграции.Вставить("ДанныеПользователя", ПолучитьСведенияОПользователе());

Особенности работы через браузер и мобильный клиент

Выясним причину, по которой обычная аутентификация ОС часто бесполезна для современных компаний. Как только сотрудник выходит за пределы офиса или берет в руки планшет, доменная авторизация перестает работать прозрачно. При использовании веб-клиента браузер может пробросить доменные данные, но только если он правильно настроен (включен Integrated Windows Authentication в свойствах зоны "Местная сеть").

Для мобильных устройств единственным жизнеспособным вариантом остается использование OpenID Connect или публикация баз через реверс-прокси с поддержкой современных протоколов авторизации.

Выводы и рекомендации

Подведем итоги нашего анализа. Платформа 1С до сих пор не имеет встроенного механизма автоматической "проброски" доменного пользователя через сервер приложений (имперсонализации) для веб-сервисов. Поэтому:

  1. Если у вас файловая база и все пользователи в одном домене — аутентификация ОС будет работать "из коробки".
  2. Если у вас клиент-сервер, не тратьте время на попытки "заставить это просто работать". Либо готовьтесь к сложной настройке Kerberos Delegation на уровне системных администраторов, либо (что правильнее) настраивайте OpenID Connect.
  3. Для 1С:Документооборота 3.0 приоритетным является использование механизмов JWT и современных настроек бесшовной интеграции, которые специально проектировались для обхода ограничений доменной авторизации.

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

← На главную