Почему не отображается список доменных пользователей при настройке аутентификации ОС в 1С:Предприятии 8.3?

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

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

Обоснование проблемы и временное решение

Ситуация, когда сервер 1С:Предприятия 8.3 (в нашем случае, версия 8.3.16.1224) под управлением 1С:Комплексная автоматизация 2 (2.4.13.227) на тонком клиенте, работающий с SQL-сервером на Windows Server 2016 Standart в домене, не может отобразить список доменных пользователей для аутентификации ОС, является достаточно распространенной. При этом мы видим сам домен в списке выбора, но поле со списком пользователей остается пустым.

Важно отметить, что часто сервер 1С и SQL-сервер находятся в одном домене, и служба 1C:Enterprise 8.3 Server Agent (x86-64) может быть запущена от имени доменного пользователя. Даже при наличии прав доменного администратора у этой службы, проблема может сохраняться. Иногда мы можем видеть локальных пользователей сервера, но не доменных.

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

Важные аспекты безопасности службы агента сервера 1С

Прежде чем углубляться в поиск причин отсутствия списка пользователей, нам необходимо рассмотреть критически важный аспект безопасности, который был затронут в ходе обсуждения. Мы выяснили, что запускать службу 1C:Enterprise 8.3 Server Agent (x86-64) от имени доменного пользователя с правами доменного администратора крайне не рекомендуется. Изначально такое действие могло быть предпринято в попытке решить проблему с правами доступа к домену, но это создает серьезные угрозы безопасности.

Давайте разберем, почему это опасно:

  1. Принцип минимальных привилегий: Любая служба должна работать с минимально необходимым набором прав. Предоставление избыточных прав, особенно прав доменного администратора, значительно увеличивает поверхность атаки. Если злоумышленник сможет скомпрометировать эту службу, он получит полные административные права в домене.
  2. Потенциальное повреждение данных: В случае ошибки или вредоносного действия, служба с правами администратора может нанести непоправимый ущерб не только системе 1С, но и всей инфраструктуре домена.
  3. Неоправданные риски: Для большинства операций, которые выполняет агент сервера 1С, не требуются права доменного администратора. Как правило, достаточно прав локальной машины и прав на чтение данных из Active Directory.

Мы настоятельно рекомендуем перенастроить учетную запись службы агента сервера 1С, предоставив ей только необходимые права. Обычно это следующие права:

  1. Права на доступ к каталогам установки 1С:Предприятия и баз данных.
  2. Права на доступ к SQL-серверу (если используется SQL-аутентификация, то через логин SQL; если аутентификация Windows, то учетная запись должна быть добавлена в SQL-сервер).
  3. Права на чтение объектов из Active Directory для работы с аутентификацией ОС.

Тот факт, что ручной ввод доменного пользователя работает, подтверждает, что сам механизм аутентификации ОС функционирует, а проблема кроется именно в получении списка пользователей.

Потенциальные причины отсутствия списка доменных пользователей

Теперь, когда мы обсудили вопросы безопасности, давайте выясним основные технические причины, по которым 1С может не отображать список доменных пользователей. Эти проблемы, как правило, не связаны напрямую с правами учетной записи агента сервера 1С, если только эта учетная запись не имеет вообще никаких прав на чтение из Active Directory.

  1. Проблемы с разрешением имен (DNS)

    Одной из наиболее распространенных причин невозможности получить список пользователей из домена является некорректная работа службы DNS на сервере 1С. Сервер 1С должен быть настроен на использование DNS-серверов, которые могут успешно разрешать имена контроллеров домена Active Directory. Мы должны убедиться, что:

    • Настройки сетевого адаптера сервера 1С указывают на правильные DNS-серверы вашего домена.
    • Отсутствуют ошибки в записях DNS.
    • Кэш DNS на сервере 1С не содержит устаревших или некорректных записей. Попробуйте очистить кэш DNS командой ipconfig /flushdns в командной строке.
    • Вы можете успешно пинговать контроллеры домена по имени.

    Неправильные записи DNS или проблемы с кэшем DNS могут препятствовать обнаружению пользователей и взаимодействию с доменными службами.

  2. Сетевая связность и брандмауэры

    Брандмауэры (как на сервере 1С, так и на контроллерах домена, а также возможно, на сетевом оборудовании) могут блокировать порты, необходимые для взаимодействия с Active Directory. Мы должны проверить, что между сервером 1С и контроллерами домена открыты следующие необходимые порты для корректной работы доменной аутентификации:

    • LDAP (Lightweight Directory Access Protocol): TCP/389 (для LDAP), TCP/636 (для LDAPS).
    • Kerberos: TCP/UDP 88.
    • DNS: TCP/UDP 53.
    • RPC Endpoint Mapper: TCP/UDP 135.
    • NetBIOS/SMB: TCP/UDP 137-139, TCP 445.

    Мы можем использовать утилиты типа telnet или Test-NetConnection в PowerShell для проверки доступности этих портов с сервера 1С до контроллеров домена.

  3. Здоровье и репликация Active Directory

    Если в домене существуют проблемы с репликацией Active Directory или сам контроллер домена работает некорректно, это может привести к тому, что 1С не сможет получить актуальный список пользователей. Мы рекомендуем:

    • Проверить журналы событий на контроллерах домена на наличие ошибок, связанных с Active Directory и репликацией.
    • Использовать утилиты диагностики домена, такие как dcdiag и repadmin, для проверки состояния Active Directory.
    • Убедиться, что все контроллеры домена находятся в актуальном и рабочем состоянии.
  4. Права учетной записи для просмотра Active Directory

    Помимо прав службы агента сервера 1С, учетная запись, под которой осуществляется непосредственная настройка аутентификации в режиме "Конфигуратор" (то есть учетная запись пользователя, который запускает конфигуратор и пытается получить список), также должна иметь достаточные права для чтения списка пользователей операционной системы из Active Directory. Обычно это права обычного доменного пользователя, но в некоторых случаях могут потребоваться дополнительные разрешения.

  5. Рассинхронизация времени

    Значительная разница во времени между сервером 1С и контроллером домена (более 5 минут) может вызывать ошибки аутентификации Kerberos. Это, в свою очередь, может влиять на возможность получения списка пользователей, так как Kerberos используется для защищенного взаимодействия с Active Directory. Мы должны убедиться, что сервер 1С синхронизирует свое время с надежным источником, предпочтительно с контроллерами домена.

  6. Версия платформы 1С:Предприятие

    В некоторых случаях проблемы с отображением доменных пользователей могут быть связаны с ошибками или особенностями конкретной версии платформы 1С:Предприятие. Обновление платформы до более свежей стабильной версии иногда может решить подобные проблемы. Мы всегда рекомендуем использовать актуальные и протестированные версии платформы.

  7. Настройки веб-сервера (при использовании веб-клиента/тонкого клиента через веб-сервер)

    Если тонкий клиент подключается к информационной базе через веб-сервер (например, IIS), то для корректной работы аутентификации ОС необходимы специфические настройки веб-сервера. Мы должны рассмотреть следующие пункты:

    • Включение Windows-аутентификации: Убедитесь, что Windows-аутентификация включена для приложения 1С на веб-сервере.
    • Настройка провайдеров аутентификации: В настройках Windows-аутентификации веб-сервера (в IIS Manager) убедитесь, что провайдер Negotiate (для Kerberos) стоит первым в списке, перед NTLM.
    • Настройки зоны безопасности браузера: Адрес информационной базы 1С в браузере клиента должен быть добавлен в список надежных сайтов или в зону интрасети.
    • Делегирование Kerberos: В некоторых сценариях (особенно если веб-сервер находится на отдельном компьютере от сервера 1С), могут потребоваться настройки делегирования Kerberos (Constrained Delegation или Unconstrained Delegation) на контроллере домена для учетной записи компьютера, на котором запущен веб-сервер. Это позволяет веб-серверу передавать учетные данные пользователя на сервер 1С от его имени.

Подводя итог, отсутствие списка доменных пользователей при настройке аутентификации ОС в 1С – это комплексная проблема, которая требует системного подхода. Мы должны последовательно проверить сетевые настройки, работу DNS, состояние Active Directory, параметры брандмауэров, а также корректность прав доступа и настройки веб-сервера (если применимо). При этом мы не должны забывать о принципах безопасности и всегда запускать критически важные службы, такие как агент сервера 1С, с минимально необходимыми привилегиями.

← На главную