Часто перед администраторами и разработчиками 1С встает задача упростить жизнь пользователям и повысить безопасность. Один из лучших способов — это настроить сквозную аутентификацию (Single Sign-On), чтобы пользователи могли входить в информационную базу 1С под своей доменной учетной записью Windows, не вводя пароль повторно. Давайте вместе разберемся, как это сделать, и проанализируем два сценария: простой, когда сервер 1С работает на Windows, и более сложный, когда сервер развернут на Linux.
Этот сценарий является наиболее распространенным и простым в реализации. Вся настройка выполняется непосредственно в конфигураторе 1С и не требует сложных манипуляций на сервере. Разберем по шагам, что нужно сделать.
Запустите 1С в режиме «Конфигуратор». Вам потребуются права администратора для внесения изменений в список пользователей.
Откройте список пользователей. Перейдите в меню Администрирование → Пользователи.
Выберите нужного пользователя. Откройте карточку пользователя, для которого вы хотите настроить доменную аутентификацию. Это может быть как новый, так и уже существующий пользователь.
Включите аутентификацию операционной системы. На основной вкладке найдите и установите флажок Аутентификация операционной системы. Это ключевая настройка, которая сообщает платформе 1С, что для этого пользователя нужно использовать учетные данные Windows.
Укажите пользователя ОС. После установки флага станет доступно поле Пользователь. Здесь необходимо указать доменного пользователя в правильном формате. Вы можете сделать это двумя способами:
Домен\ИмяПользователяОС. Например: MYCOMPANY\ivanov.ii.Сохраните изменения. Нажмите «ОК» или «Записать», чтобы сохранить настройки для пользователя.
После этих действий пользователь сможет заходить в 1С без ввода пароля, если он уже авторизован в домене Windows на своем рабочем компьютере. Платформа автоматически сопоставит его сессию Windows с пользователем в 1С.
Если сервер «1С:Предприятие» установлен на операционной системе семейства Linux, а домен построен на базе Windows Active Directory, простая установка флага в конфигураторе не сработает. Выясним причину: сервер 1С на Linux не может напрямую использовать механизмы аутентификации Windows (NTLM). Вместо этого он использует протокол Kerberos. Поэтому настройка потребует действий как на контроллере домена, так и на самом Linux-сервере.
Рассмотрим подробнее весь процесс по шагам.
Здесь наша задача — создать специальную служебную учетную запись и сгенерировать для нее файл ключей (keytab), который свяжет ее со службой сервера 1С.
usr1cv8). Задайте сложный пароль, который не истекает.
.keytab файл. Для этого используется утилита командной строки ktpass. Эта команда создает Service Principal Name (SPN) — уникальный идентификатор службы в домене — и связывает его с нашей учетной записью.
Посмотрим на пример команды:
ktpass -princ HTTP/1c-server.mycompany.local@MYCOMPANY.LOCAL -mapuser MYCOMPANY\usr1cv8 -pass * -out C:\temp\1c.keytab -ptype KRB5_NT_PRINCIPAL -crypto ALL
Проанализируем параметры:
-princ: Указывает SPN. 1c-server.mycompany.local — это полное доменное имя (FQDN) вашего Linux-сервера с 1С. MYCOMPANY.LOCAL — это имя вашего домена (REALM) в верхнем регистре.-mapuser: Указывает служебного пользователя, которого мы создали на шаге 1.-pass *: Запросит ввод пароля для этого пользователя.-out: Путь для сохранения сгенерированного .keytab файла.Теперь нам нужно настроить сам Linux-сервер для работы с Kerberos и "подложить" ему сгенерированный ключ.
sudo apt-get install krb5-user
/etc/krb5.conf. В нем нужно указать параметры вашего домена. Вот минимальный пример содержимого:
[libdefaults]
default_realm = MYCOMPANY.LOCAL
[realms]
MYCOMPANY.LOCAL = {
kdc = dc1.mycompany.local
admin_server = dc1.mycompany.local
}
[domain_realm]
.mycompany.local = MYCOMPANY.LOCAL
mycompany.local = MYCOMPANY.LOCAL
Здесь MYCOMPANY.LOCAL — ваш домен, а dc1.mycompany.local — имя вашего контроллера домена.
.keytab файл. Файл 1c.keytab, который мы сгенерировали на Windows Server, нужно скопировать на Linux-сервер. Обычно его кладут в каталог с файлами платформы 1С и устанавливают права доступа, чтобы пользователь usr1cv8 мог его читать.
kinit от имени пользователя, для которого настроена аутентификация. Если команда выполнится без ошибок, значит, связь с доменом установлена.
После всех серверных манипуляций финальный шаг выполняется в конфигураторе 1С. Он полностью совпадает с первым решением: откройте карточку пользователя, установите флаг Аутентификация операционной системы и укажите его доменную учетную запись.
Важный момент: если у вас возникают проблемы, лучшим инструментом для диагностики будет Технологический журнал 1С. Он подробно покажет все этапы попытки аутентификации и поможет найти ошибку, будь то неверный SPN, проблемы с DNS или рассинхронизация времени.
← К списку