При внедрении бесшовной интеграции между 1С:ERP Управление предприятием и 1С:Документооборот (ДО) одним из первых вопросов становится механизм авторизации пользователей. Бесшовная интеграция позволяет работать с объектами ДО прямо из интерфейса ERP, но для этого система должна «понимать», от имени какого пользователя в «Документообороте» выполняются действия. Рассмотрим подробно, как устроена эта система, где хранятся данные и как правильно настроить доступ для обычных пользователей.
Для администратора системы настройка кажется очевидной, так как она доступна в общих формах интеграции. Однако обычный пользователь с ограниченными правами часто не может найти, где ввести или изменить свой логин и пароль. Разберем по шагам, как добраться до этих настроек в интерфейсе программы:
Именно здесь каждый пользователь может самостоятельно указать свои учетные данные для подключения к базе «Документооборота». Если это окно не открывается или данные не сохраняются, проанализируем наличие у пользователя роли Использование интеграции с 1С:Документооборотом. Без этой роли персональные настройки могут быть недоступны. Для проверки работы интеграции под сеансом конкретного сотрудника пригодится обработка для запуска 1С под любым пользователем без пароля.
С точки зрения разработчика и системного администратора важно понимать, куда именно записываются введенные данные. Выясним причину, по которой поиск паролей в обычных таблицах базы данных может не дать результата.
Основным объектом, отвечающим за связь учетных записей, является регистр сведений НастройкиАвторизацииВ1СДокументообороте. Рассмотрим подробнее особенности хранения информации:
Безопасное хранилище данных. Важно понимать, что современные конфигурации на базе БСП не хранят пароли в открытом виде в ресурсах регистра. Сами пароли записываются в системное Безопасное хранилище платформы 1С. Это защищает конфиденциальные данные от просмотра через консоль запросов или прямой доступ к таблицам SQL. В регистре фиксируется лишь факт наличия настройки для конкретного пользователя.
Программный вызов формы авторизации. Если вам необходимо вызвать окно ввода пароля программно (например, при создании собственной кнопки в интерфейсе), следует использовать обработку ИнтеграцияС1СДокументооборот и её форму АвторизацияВ1СДокументооборот.
Пример обращения к метаданным:
ФормаАвторизации = Обработки.ИнтеграцияС1СДокументооборот.ПолучитьФорму("АвторизацияВ1СДокументооборот");
ФормаАвторизации.Открыть();
Часто возникает соблазн создать одну общую «сервисную» учетную запись в 1С:Документооборот и прописать её всем пользователям ERP, чтобы упростить администрирование. Разберем, почему это является критической ошибкой архитектуры.
1. Права доступа и задачи. Бесшовная интеграция построена на трансляции прав. Если все пользователи заходят под одной учеткой, они будут видеть задачи друг друга, смогут согласовывать документы за других лиц, а ограничения доступа (например, по грифам секретности или организациям) перестанут работать корректно.
2. Аудит и история изменений. В 1С:Документооборот ведется протоколирование событий и версионирование файлов. При использовании сервисной учетки во всех протоколах автором изменений будет значиться «Сервисный пользователь», что делает невозможным проведение внутреннего аудита и выяснение, кто на самом деле изменил документ.
3. Электронная подпись (ЭП). Если в компании используется ЭЦП, то подписание документа из ERP требует сопоставления сертификата с конкретным пользователем в ДО. Сервисная учетная запись полностью блокирует возможность корректного использования персональных подписей.
4. Уведомления. Задачи, бизнес-процессы и уведомления на электронную почту будут приходить на адрес, указанный в карточке сервисного пользователя, а не реальному исполнителю в ERP.
Чтобы избавить пользователей от необходимости помнить лишние пароли и вводить их при первом запуске, рассмотрим возможность настройки Windows-авторизации. Если и ERP, и ДО опубликованы на веб-сервере с поддержкой аутентификации ОС, система сможет выполнять автоматический «проброс» данных текущего сеанса.
Проанализируем алгоритм работы в этом случае:
DMService), платформа передает данные текущего пользователя.Посмотрим на ситуацию, когда пользователи работают через браузер. В этом случае ERP выступает в роли клиента, который обращается к веб-серверу, где опубликован «Документооборот». Если данные авторизации в НастройкиАвторизацииВ1СДокументообороте введены неверно, пользователь может столкнуться с «зависанием» интерфейса. Это происходит потому, что система ожидает ответа от веб-сервиса (таймаут), пытаясь авторизоваться с некорректными данными.
Для стабильной работы убедитесь, что:
НастройкиАвторизацииВ1СДокументообороте (даже если используется доменная авторизация, иногда требуется первичная инициализация связи).Таким образом, правильная настройка авторизации — это залог не только безопасности, но и корректной работы всех бизнес-процессов внутри бесшовной интеграции.