Почему не открывается окно авторизации 1С при работе через веб-сервис IIS и как это исправить

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

При публикации базы данных 1С на веб-сервере Internet Information Services (IIS) системные администраторы часто сталкиваются с ситуацией, когда на самом сервере всё работает корректно, но при попытке входа с клиентских машин вместо окна выбора пользователя отображается пустая страница или возникает ошибка аутентификации. Разберем по шагам, почему это происходит и как правильно настроить связку 1С и IIS для стабильной работы в локальной сети. Чтобы автоматизировать этот процесс и исключить ошибки ручной настройки, можно использовать внешнюю обработку для публикации информационных баз.

Анализ роли учетной записи IUSR и прав доступа к файловой базе

Одной из самых частых причин ошибок аутентификации в журнале регистрации 1С является запись NT AUTHORITY\IUSR. Эта встроенная учетная запись Windows используется IIS для обеспечения анонимного доступа к веб-содержимому. Когда пользователь обращается к базе через браузер, IIS пытается инициировать сеанс именно от этого имени. Если у IUSR нет прав на чтение и запись в папку, где лежит файловая база данных (файл 1Cv8.1CD), подключение прерывается до того, как вы увидите окно ввода логина.

Рассмотрим правильный алгоритм настройки прав доступа:

  1. Выясним, под каким пользователем работает Пул приложений (Application Pool) вашей публикации. По умолчанию это ApplicationPoolIdentity, что часто создает путаницу в правах.
  2. Рекомендуется создать отдельного локального пользователя (например, 1c_web_user) и включить его в группу пользователей IIS.
  3. В консоли управления IIS перейдем в раздел Пулы приложений, выберем пул, соответствующий нашей публикации, и в Дополнительных параметрах укажем созданного пользователя в поле Удостоверение (Identity).
  4. Дадим этому пользователю полные права на папку с базой 1С и на папку с установленной платформой.

Тонкая настройка файла публикации default.vrd

Файл default.vrd — это сердце вашей публикации. Он находится в каталоге, который вы указали при публикации базы через Конфигуратор. Проанализируем его содержимое. Иногда стандартная публикация не прописывает все необходимые параметры для корректной передачи данных авторизации.

Разберем основные атрибуты, которые могут нам понадобиться:

Если окно выбора пользователя «зависает» или не появляется, мы можем попробовать жестко прописать технического пользователя для веб-сервиса в строке соединения внутри default.vrd. Это позволит IIS авторизоваться в 1С под конкретной учеткой, а уже внутри системы разграничить права, если это необходимо. Пример строки соединения:


<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        base="/MyBase"
        ib="File=&quot;C:\Bases\Trade&quot;;usr=WebUser;pwd=SecretPassword;">
</point>

Здесь usr и pwd — это логин и пароль пользователя, созданного внутри самой 1С.

Настройка проверки подлинности в консоли IIS

Проанализируем ситуацию, когда включена «Аутентификация операционной системы» в 1С. В этом случае настройки в консоли IIS должны строго соответствовать настройкам в Конфигураторе. Если в IIS включена одновременно и Анонимная проверка подлинности, и Проверка подлинности Windows, сервер может отдавать приоритет анонимному входу, что приведет к ошибке доступа.

Для корректной работы Windows-аутентификации выполним следующие шаги:

  1. В консоли IIS выберем наш виртуальный каталог.
  2. Зайдем в раздел Проверка подлинности (Authentication).
  3. Выключим «Анонимную проверку подлинности».
  4. Включим «Проверку подлинности Windows».
  5. Проверим, что в Конфигураторе 1С в окне публикации стоит галочка Использовать аутентификацию операционной системы.

Сопоставление обработчиков и библиотека wsisapi.dll

Часто проблема с доступом с других машин связана с тем, что IIS неправильно обрабатывает запросы к расширениям 1С (.1cws, .1capp). Это происходит из-за некорректного указания пути к библиотеке расширения веб-сервера. Выясним, какая версия платформы используется, и проверим настройки.

Перейдем в раздел Сопоставление обработчиков (Handler Mappings) в IIS:

  1. Найдем обработчики 1C Web-service Extension.
  2. Убедимся, что путь к файлу wsisapi.dll ведет именно в ту папку bin, которая соответствует текущей работающей версии 1С (например, C:\Program Files\1cv8\8.3.21.1302\bin\wsisapi.dll).
  3. Важный нюанс: Если у вас 64-битная Windows, а платформа 1С установлена 32-битная, в настройках пула приложений обязательно установите параметр Разрешить 32-разрядные приложения (Enable 32-Bit Applications) в значение True.

Диагностика через логи IIS и коды ошибок HTTP

Посмотрим на логи IIS (обычно они находятся в C:\inetpub\logs\LogFiles\). Если вы видите запросы со статусом 401 (Unauthorized) или странные 402, это прямой сигнал о проблеме с правами или методом передачи учетных данных. Код 401.2 часто означает, что сервер настроен на проверку подлинности Windows, но клиент (браузер) не смог передать данные пользователя.

Проанализируем ситуацию с «белым экраном». Часто он возникает из-за работы Фильтрации запросов (Request Filtering). 1С генерирует очень длинные URL при работе через веб-интерфейс. Если лимит длины строки запроса в IIS слишком мал, сервер будет обрывать соединение до загрузки скриптов авторизации.

Чтобы это исправить, в разделе Фильтрация запросов выберем Изменить параметры функции и увеличим значения параметров:

Заключение и радикальные методы решения

Если все вышеперечисленные настройки проверены, но «Ошибка аутентификации» сохраняется только для внешних подключений, стоит обратить внимание на фаервол и антивирусное ПО на сервере. Попробуем временно отключить брандмауэр Windows, чтобы исключить блокировку портов (80 или 443).

В некоторых случаях, как показала практика, конфигурация IIS может накопительно содержать ошибки в метабазе данных. Если стандартные методы не помогают, рассмотрим вариант полной переустановки компонентов IIS через панель управления Windows «Включение или отключение компонентов». После переустановки и повторной публикации базы из Конфигуратора, права доступа и параметры пула приложений будут сброшены к рабочим значениям по умолчанию, что часто решает проблему магическим образом. Дополнительно для разбора скрытых нюансов работы веб-сервисов можно изучить руководство по устранению неочевидных проблем 1С под IIS.

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

← На главную