Iis windows authentication нет в списке

Обновлено: 02.07.2024

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

Если у вас используется доменная авторизация пользователя Windows, то авторизация при входе в «1С: Предприятие» и подключении к веб-серверу будет происходить без дополнительного запроса имени пользователя и пароля.

Настройка использования доменной авторизации Windows при подключении к веб-серверу производится в несколько этапов.

Настройка проверки подлинности веб-службы IIS в Windows

Рассмотрено на примере ОС Windows 10, для других версий Windows могут быть небольшие отличия.

Открыть панель управления Windows и выбрать пункт «Программы».


Далее выбрать «Включение или отключение компонентов Windows».


В открывшемся списке найти пункт «Службы IIS», затем открыть «Службы Интернета» → «Безопасность» и поставить флаг в пункте «Проверка подлинности Windows».



Настройка авторизации пользователя в базе «1С:Предприятие 8»

В конфигураторе 1С в настройках пользователя («Администрирование» → «Пользователи» → выбрать нужного пользователя) поставьте флаг в пункте «Аутентификация операционной системы».


В настройках публикации на веб-сервере поставьте флаг на «Использовать аутентификацию операционной системы» и нажмите «Опубликовать».


Изменение настроек коннектора Mobile SMARTS к базе «1С:Предприятия»

Коннектор 1С используется только в случае работы сервера Mobile SMARTS и «1С: Предприятие» в режиме онлайн.

В настройках коннектора в панели управления Mobile SMARTS необходимо указать адрес веб-сервера и данные пользователя Windows, от имени которого будет происходить подключение к нему.

Откройте вкладку «Свойства» для коннектора «1С: Предприятия».


В строке «Сервер» укажите адрес ранее опубликованного веб-сервера.


Далее во вкладке «Прочее» укажите следующие параметры:


  • Домен — имя домена или имя текущей OС Windows (например «cleverence.local» или VM-VIN10-USR-3).
  • Пароль — пароль пользователя домена или текущей ОС, который вы будете использовать при подключении к опубликованному веб-сервису 1С.
  • Пользователь — пользователь, от имени которого вы будете подключаться к веб-сервису и 1С.
  • Тип авторизации — укажите значение «Win» (Windows).
  • Тип подключения - WebConnector.
После того как был выбран тип авторизации Win, перевведите пароль для получения токена Windows!

Сохраните все изменения.


Запустите коннектор к 1С. Если запуск прошел успешно, значит все настройки были произведены правильно.


Если попытка запуска завершится неудачей, то необходимо перепроверить все указанные настройки, или воспользоватьс функцией «Диагностика и исправление проблем».

date

11.09.2019

directory

Windows Server 2012 R2

comments

комментариев 20

Пошаговая инструкция по настройке на веб-сайте IIS на Windows Server 2012 R2 прозрачной авторизации доменных пользователей в режиме SSO (Single Sign-On) по протоколу Kerberos.

На веб сервере запустите консоль IIS Manager, выберите нужный сайт и откройте раздел Authentication. Как вы видите, по умолчанию разрешена только анонимная аутентификация (Anonymous Authentication). Отключаем ее и включаем Windows Authentication (IIS всегда сначала пытается выполнить анонимную аутентификацию).

IIS - Windows Authentication

Открываем список провайдеров, доступных для Windows аутентификации (Providers). По умолчанию доступны два провайдера: Negotiate и NTLM. Negotiate – это контейнер, который в качестве первого метода проверки подлинности использует Kerberos, если эта аутентификация не удается, используется NTLM. Необходимо, чтобы в списке провайдеров метод Negotiate стоял первым.

Провайдеры включаем Windows Authentication

Предположим, у нас имеется ферма IIS серверов. В этом случае оптимально создать отдельную учетную запись в AD и привязать SPN записи к ней. Из-под этой же учетной записи будут запускать целевой Application Pool нашего сайта.

Создадим доменную учетную запись iis_service. Убедимся, что SPN записи для этого объекта не назначены (атрибут servicePrincipalName пустой).

Setspn /s HTTP/webportal.contoso.loc contoso\iis_service

Таким образом, мы разрешим этой учетной записи расшифровывать тикеты Kerberos при обращении пользователей к данным адресам и аутентифицировать сессии.

Проверить настройки SPN у учетной записи можно так:

setspn /l iis_service

setspn /l iis_service

Совет. Kerberos не будет работать корректно при наличии дублирующих SPN у разных записей домена. С помощью следующей команды, убедитесь, что дубликатов SPN в домене нет: setspn –x

Следующий этап – настройка в IIS Application Pool для запуска из-под созданной сервисной учетной записи.

Выберите Application Pool сайта (в нашем примере это DefaultAppPool).

DefaultAppPool

Откройте раздел настроек Advanced Settings и перейдите к параметру Identity.

Расширенные настройки пула IIS

Измените его с ApplicationPoolIdentity на contoso\iis_service.

identity

Затем в консоли IIS Manager перейдите на свой сайт и выберите секцию Configuration Editor.

В выпадающем меню перейдите в раздел system.webServer > security > authentication > windowsAuthentication

useAppPoolCredentials

Измените useAppPoolCredentials на True.

Тем самым мы разрешим IIS использовать доменную учетку для расшифровки билетов Kerberos от клиентов.

Перезапустим IIS командой:

iisreset

Аналогичную настройку нужно выполнить на всех серверах веб-фермы.

Примечание. В моем примере, на IE11 сразу авторизоваться не получилось. Пришлось добавить адрес в доверенные и в настройках Trusted Zones Sites выставить значение параметра User Authentication -> Logon на Automatic logon with current user name and password

Запускаем Fiddler, в браузере открываем целевой сайт. В левом окне находим строку обращения к сайте. Справа переходим на вкладку Inspectors. Строка Authorization Header (Negotiate) appears to contain a Kerberos ticket, говорит о том, что для авторизации на IIS сайте использовался протокол Kerberos.

Настройка аутентификации Windows при расположении веб-сервера IIS и рабочих серверов на разных машинах

Не работает аутентификация операционной системы (windows) через IIS при использовании тонкого клиента или веб-клиента.

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


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

Решение проблемы

На сервере 1С включить технологический журнал, используя следующую настройку:

Воспроизвести ситуацию с неудачной аутентификацией операционной системы. Авторизоваться под пользователем операционной системы, указанным в свойствах пользователя 1С.


Открыть технологический журнал рабочего процесса и найти событие EXCP со следующим описанием: "Идентификация пользователя не выполнена
Неправильное имя или пароль пользователя"

Обратите внимание на предшествующее ему событие CONN и значение свойства DstUserName2 - именно в таком виде пользователь должен быть указан в свойствах пользователя информационной базы.

Заменить значение свойства "Пользователь" пользователя информационной базы согласно следующему формату "\\" + [Имя пользователя из свойства DstUserName2 без скобок].

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

Расположение веб-сервера IIS и рабочих серверов 1С на разных машинах

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

При возникновении такой ситуации необходимо проверить следующие настройки:

1) Убедиться, что процессы сервера 1С запущены от имени доменной учетной записи, входящей в группу Domain Users.

2) Убедиться, что веб-сервер IIS настроен корректно.

В публикации информационной базы найти настройки аутентификации

В настройках аутентификации отключить анонимную аутентификацию и включить Windows-аутентификацию. В Windows-аутентификации упорядочить доступных провайдеров так, чтобы на первом месте был Negotiate.


Пул приложений публикации не нуждается в настройках, в нем можно оставить все по умолчанию.

После изменения настроек перезапустить веб-сервер с помощью команды iisreset в командной строке.

3) Убедиться, что в контроллере домена в свойствах компьютера, на котором запущен веб-сервер, на вкладке делегирование установлено "Доверять компьютеру делегирование любых служб (только Kerberos)"

Для этого откройте оснастку Active Directory Users and Computers (dsa.msc), в компьютерах найдите веб-сервер, перейдите в его свойства и на вкладке Делегирование установить значение "Доверять компьютеру делегирование любых служб (только Kerberos)" и нажать применить.


4) Убедиться, что на клиенте в свойствах обозревателя разрешена встроенная проверка подлинности Windows.


После выполнения всех действий необходимо перезагрузить клиентский компьютер (рабочие серверы перезагрузки не требуют) и убедиться, что аутентификация операционной системы успешно выполняется.

Важно: аутентификации Windows при расположении веб-сервера IIS и рабочих серверов на разных машинах в тонком клиенте работает, начиная с версии 8.3.10.2620 (для тестирования).

Хотите узнать, как настроить аутентификацию NTLM на сервере IIS? В этом учебнике мы собираемся настроить аутентификацию NTLM на сервере IIS.

• Windows 2012 R2
• Windows 2016
• Windows 2019

В нашем примере имя сервера IIS — TECH-DC01.

Проверка подлинности NTLM теперь называется аутентификацией WINDOWS.

Список оборудования

В следующем разделе представлен список оборудования, используемого для создания этого учебника.

Как Amazon Associate, я зарабатываю от квалификационных покупок.

Windows Учебник:

На этой странице мы предлагаем быстрый доступ к списку учебников для Windows.

Учебник IIS - проверка подлинности NTLM

На менеджере сервера включите функцию безопасности IIS под названием: Аутентификация Windows.

IIS - NTLM authentication feature

Запустите приложение под названием: IIS Manager.

Start IIS Windows

В приложении IIS Manager доступ к веб-сайту и выберите каталог, который вы хотите защитить.

В правой части экрана доступ к опции под названием: Аутентификация.

IIS - Configure Authentication

Отключите анонимную аутентификацию в выбранном каталоге.

IIS - Disable the anonymous authentication

Включите аутентификацию Windows в выбранном каталоге.

IIS - Enable NTLM authentication

Дополнительно используйте командную строку для проверки подлинности NTLM.

В нашем примере мы настроили сервер IIS для использования типа аутентификации NTLM.

В нашем примере мы настроили сервер IIS, чтобы требовать проверки подлинности для доступа к каталогу.

Как администратор создайте учетную запись локального пользователя.

В нашем примере мы создали локаную учетную запись пользователя под названием GOHAN.

Чтобы протестировать установку, откройте браузер Chrome и попробуйте получить доступ к защищенному каталогу.

В нашем примере в браузер был введен следующий URL::

Сервер IIS потребует от вас выполнить проверку подлинности пользователя.

IIS - Basic authentication configuration

Поздравляю! Вы настроили проверку подлинности NTLM на сервере IIS.

Учебник IIS - NTLM Единый знак проверки подлинности

Чтобы обеспечить прозрачную аутентификацию NTLM, необходимо создать запись SPN для вашего веб-сайта.

Как администратор домена, создайте запись SPN для вашего веб-сайта.

Измените название веб-сайта и сервера.

Поздравляю! Вы настроили проверку подлинности NTLM без формы аутентификации на сервере IIS.

Читайте также: