Настройка сквозной аутентификации (Single Sign-On или SSO) — одна из наиболее частых задач при администрировании систем 1С. Она позволяет пользователям входить в программу, не вводя логин и пароль повторно, если они уже авторизованы в операционной системе Windows. Однако на практике администраторы часто сталкиваются с ситуацией, когда, несмотря на все настройки в Конфигураторе, окно выбора пользователя или ввода пароля 1С продолжает появляться. Рассмотрим подробно, как правильно настроить этот механизм, разберем причины сбоев и способы их устранения.
Для начала проанализируем базовый алгоритм настройки в Конфигураторе. Для того чтобы система «узнала» пользователя Windows, необходимо выполнить следующие действия:
DOMAIN\UserName для доменных сетей или ComputerName\UserName для рабочих групп.Разберем ситуацию из практики: если вы оставляете обе галочки (1С и ОС), система в первую очередь пытается авторизовать вас через ОС. Если это не удается или параметры запуска заданы неверно, 1С покажет стандартное окно. Если убрать галочку «Аутентификация 1С:Предприятия» и оставить только «Аутентификация ОС», то при ошибке распознавания Windows-пользователя система выдаст ошибку доступа, так как альтернативного способа входа (по паролю 1С) не предусмотрено.
Часто проблема кроется в том, как именно запускается ярлык 1С или скрипт автоматизации (например, для бэкапа в Handy Backup). Если мы хотим принудительно использовать Windows-аутентификацию, проанализируем использование ключа /WA.
Рассмотрим основные ключи командной строки:
/WA+ — принудительно использовать аутентификацию средствами ОС./WA- — принудительно отключить аутентификацию ОС (всегда спрашивать пароль 1С)./N "ИмяПользователя" — имя пользователя 1С./P "Пароль" — пароль пользователя 1С.Важный нюанс: если вы используете сквозную авторизацию для целей архивации и не хотите видеть диалоговых окон, строка запуска в бат-файле или планировщике должна выглядеть примерно так:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /F "C:\Bases\MyBase" /WA+ /Visible-
Здесь параметр /Visible- позволяет подавить GUI-интерфейс, если это поддерживается конкретной задачей, чтобы никакие лишние окна не мешали автоматическому процессу.
Если ваши компьютеры находятся в рабочей группе (Workgroup), а не в домене Active Directory, механизм передачи данных авторизации усложняется. Проанализируем, почему это происходит. В домене контроллер подтверждает личность пользователя. В рабочей группе 1С пытается сопоставить локального пользователя текущей машины с пользователем, прописанным в базе.
Чтобы сквозная аутентификация работала корректно в сетевом файловом варианте без домена, необходимо соблюдение правила идентичности учетных записей:
Если пароли на разных машинах различаются, Windows не сможет «пробросить» авторизацию прозрачно, и 1С снова запросит логин/пароль.
При использовании интеграции между базами или внешними скриптами часто возникает вопрос: как передать доменного пользователя в строке подключения? Посмотрим на пример формирования строки соединения:
// Пример для COM-соединения с явным указанием доменного пользователя
СтрокаПодключения = "Srvr='ServerName';Ref='BaseName';Usr='Domain\UserName';Pwd='Password';";
// Если используется текущий контекст Windows, параметры Usr и Pwd можно опустить
СтрокаПодключения = "Srvr='ServerName';Ref='BaseName';";
Если вы подключаетесь из-под учетной записи, которая уже имеет права доступа в 1С через Windows-аутентификацию, платформа подхватит эти права автоматически без явного указания Usr. Однако, если процесс (например, сервис IIS или фоновая служба планировщика) запущен от имени системы (System), а не конкретного пользователя, аутентификация не пройдет. В этом случае в настройках службы запуска следует указать конкретную учетную запись.
Иногда при настройке аутентификации ОС возникает странная ошибка, упоминающая файл 1Cv8tmp.1CD. Выясним причину этого поведения. При входе через Windows-аутентификацию 1С проверяет права доступа на уровне файловой системы.
Для корректной работы пользователю Windows должны быть назначены полные права (Чтение, Запись, Изменение) на папку с базой данных. Если прав недостаточно для создания временных файлов блокировок и идентификации, механизм определения пользователя ОС дает сбой. Убедитесь, что в свойствах папки на вкладке «Безопасность» ваш пользователь или группа «Пользователи домена» имеют необходимые разрешения.
Если ваша задача — настроить Handy Backup или аналогичную программу, рассмотрим альтернативные пути:
Проанализируем ситуацию, когда все настройки верны, но окно всё равно появляется. Проверьте «Диспетчер учетных данных» (Credential Manager) в Панели управления Windows. Если там сохранены старые пароли для доступа к сетевому ресурсу, где лежит база 1С, операционная система может подставлять их автоматически. Очистка этих записей часто исправляет проблемы с авторизацией, которые кажутся «необъяснимыми» с точки зрения настроек 1С.
Подводя итог, можно сказать, что успех настройки аутентификации средствами ОС зависит от трех факторов: точного указания пути к пользователю в Конфигураторе, соответствия прав доступа к файлам на уровне Windows и использования правильных ключей запуска (/WA+) в сценариях автоматизации.