Настройка сквозной авторизации internet explorer

Обновлено: 04.07.2024

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

В браузере Edge, на текущий момент, отсутствует поддержка доменной аутентификации.

Настройка Firefox :

  • Открыть вкладку с адресом about:config
  • В случае необходимости использования NTML аутентификации нужно настроить параметр network.automatic-ntlm-auth.trusted-uris указав в его значении домен сервиса (например balance.domain.com или .domain.com для использования всех поддоменов из домена domain.com).
  • В случае необходимости использования Kerberos аутентификации также нужно настроить параметры network.negotiate-auth.delegation-uris (задать протокол для которого будет использоваться доменная аутентификация, например "http://,https://" для включения обоих протоколов) и network.negotiate-auth.trusted-uris (значение задается по аналогии с NTLM параметром) .

Можно включить использование доменной аутентификации для всех доменов, включив параметры (задав значение true) network.automatic-ntlm-auth.allow-non-fqdn или network.negotiate-auth.allow-non-fqdn, и очистив значения параметров network.automatic-ntlm-auth.trusted-uris и network.negotiate-auth.trusted-uris.

Настройка IE (Chrome и браузеры на основе Chromium, в частности Opera и Yandex браузер, используют настройки IE):

В браузере IE, после прохождения доменной аутентификации и дальнейшей необходимости перевойти с помощью логина/пароля, или использования другого вида аутентификации, требуется закрыть и снова открыть браузер (переоткрыть вкладку не достаточно).
Это связано с особенностью работы браузера IE (всех версий), в которой он использует упреждающую аутентификацию (не дожидается требования аутентификации от сервера, а самостоятельно начинает этот процесс), что в совокупности с запоминанием им возможности доменной аутентификации на конкретном URL, приводит к автоматической переаутентификации на доменную учетную запись посреди сеанса.

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

Для того чтоб это работало необходимо следующее:

-В IE должна присутствовать галка: Разрешить встроенную проверку Windows (она стоит по умолчанию);


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


Задача оказалась не такой простой, как казалось изначально.

Для не доменных машинок процесс достаточно прост:

Откройте Свойства браузера -> Безопасность -> Местная интрасеть (Local intranet), нажмите на кнопку Сайты -> Дополнительно. Добавьте в зону следующие записи:


Даже если бы и была возможность, то руками прописывать сайты никак не улыбается, поэтому, как обычно, делаем это через GPO:

Открываем редактор локальной (gpedit.msc) либо доменной (gpmc.msc) политики.

Переходим в раздел Конфигурация компьютера -> Административные шаблоны -> Компоненты Windows -> Internet Explorer -> Панель управления браузером -> Вкладка безопасность.

Включаем политику Список назначений зоны безопасности для веб-сайтов. В настройках политики нужно указать список доверенных серверов в формате:

  • Имя сервера (в виде file://server_name, \\server_name, server_name или IP)
  • Номер зоны (1 – Для местной интрасети)

В моем случае правим отдельную политику IE Default (ранее она уже была создана для других манипуляций IE):




На компе gpupdate /force


Теперь в IE появляются следующие настройки:


Можно проверить ветку реестра:

HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\ Internet Settings\ZoneMap\Domains.

Теперь авторизация проходит без пароля. Это радует. Но работает пока только в IE. В Chrome у меня не сработало, но потом все вроде подхватилось и под Chrome.

Но если все же не заработало, то можно прикрутить в GPO шаблон под Chrome:

Сейчас эти галки возможно убрать руками просто зайдя в настройки IE:


Чтоб такой возможности у пользователей не было, можно включить все три вот этих политики:

В большинстве организаций, для удобства управления компьютерами и пользовательскими учетными записями, установлена служба Active Directory, удобнее ее я если честно еще не встречал ничего, нужно отдать должное компании Microsoft. Благодаря этому. у пользователя есть возможность получать доступ к различным службам и услугам с помощью единой учетной записи. Все хорошо, но в некоторых службах, где используется для доступа браузер, необходимо вводить логин и пароль, это не проблема, но и это можно улучшить.

Есть такая вещь, как SSO (Single-Sign-On) или как ее еще именуют сквозная авторизация - это по сути единый вход на сервис, без ввода логина и пароля с использованием текущих учетных данных, которые были использован при авторизации на компьютере. Большинство современных программных комплексов стараются внедрять у себя SSO, например как у vCenter, где он добавляет Windows авторизацию. ManageEngine ServiceDesk в этом плане не исключение. Тут два варианта реализации, первый это служба федерации Active Directory для всех браузеров, и требует дополнительного сервера или встроенная SSO, но там есть ограничения на поддерживаемые браузеры, будут работать Internet Explorer, Google Chrome.

Алгоритм SSO в ManageEngine ServiceDesk

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

ServiceDesk Plus внедрил безопасный канал в Active Directory, используя службу NETLOGON через учетную запись компьютера. Для включения службы NetLogon эта учетная запись компьютера требует пароль. Сервис NetLogon является внутренним каналом связи Microsoft. Один компьютер создаст уникальный идентификатор в домене и создаст некоторый случайный пароль для дальнейшей связи в домене. Например, когда пользователь пытается войти в систему, компьютер выдаст свою идентификационную информацию AD, а затем попытается аутентифицировать пользователя.

Учетные записи пользователей используются для доступа, и он не может напрямую взаимодействовать с AD, поэтому мы используем учетную запись компьютера для netlogon. Поскольку пароль генерируется случайным образом во время регистрации компьютера в домене, то вы его явным образом не будите знать.

ServiceDesk Plus использует VBScript для создания учетной записи компьютера и установки пароля для них. Начиная с версии 7600, ServiceDesk Plus для сквозной аутентификации использует метод NTMLV2, который обеспечивает лучшую безопасность и проверяет учетные данные с помощью сервиса NETLOGON, и NTLMV1 больше не будет поддерживаться.

Показывать настройку сквозной авторизации я буду на ManageEngine ServiceDesk 10016, которую я недавно обновил. Открываем веб интерфейс ManageEngine ServiceDesk, находим раздел "Параметры - Active Directory".

sso в ManageEngine ServiceDesk

Находим раздел "Проверка подлинности Active Directory" и активируем функцию "Включить сквозную авторизацию (единый вход)".

Включить сквозную авторизацию ManageEngine ServiceDesk

Пожалуйста, выберите доменное имя, с которого вы хотите настроить сквозную аутентификацию. Вы можете включить сквозную аутентификацию для пользователей из определенного домена/леса AD. Чтобы аутентификация выполнялась для других пользователей домена, другой домен должен иметь доверительные отношения с выбранным доменом или родительские и дочерние отношения. В случае домена Parent-Child, здесь должен быть выбран только родительский домен. После настройки доверительных отношений в AD необходимо настроить сквозную проверку подлинности.

Чтобы использовать поставщик безопасности NTLM в качестве службы проверки подлинности, необходимо создать учетную запись компьютера в Active Directory с определенным паролем, который соответствует политике паролей в Active Directory. Укажите уникальное имя для учетной записи компьютера и пароль для этой учетной записи. Примечание. Убедитесь, что ваш пароль соответствует политике паролей домена. Тогда имя учетной записи компьютера не должно быть более 12 символов и не должно содержать никаких специальных символов.

  • Имя домена - пишем корневой домен в лесу
  • Учетная запись компьютера - имя компьютера, который будет создан для SSO в вашем домене. Если учетная запись компьютера была создана заранее, то поместите ее на время сброса пароля в контейнер "Computers".
  • Пароль - пароль компьютера, который создан для SSO. ПАРОЛЬ не должен содержать спец символов, иначе работать не будет. или DNS сервер - тут обычно прописывают контроллере домена
  • Строка привязки (Bind String) - суда пишется DNS суффикс домена, обычно совпадает с именем рутового домена в лесу.
  • Сайт DNS - имя сайта Active Directory, где находится контроллер домена, к которому идет подключение.

Ввод данных sso в ManageEngine ServiceDesk

Если вы указываете имя существующей учетной записи компьютера, указанный здесь пароль также будет установлен в Active Directory для этой учетной записи компьютера. Вы также можете сбросить пароль учетной записи компьютера, нажав на ссылку «Сбросить пароль». Даже если при создании учетной записи компьютера или сброса пароля (уже созданной учетной записи компьютера) из приложения возникнет ошибка, сведения, указанные в окне, будут сохранены в базе данных приложения. Загрузите сценарии и сохраните сценарии NewComputerAccount.vbs и SetComputerpass.vbs. Оба сценария нам пригодятся.

sso в ManageEngine ServiceDesk-03

Запуск сценариев на сервере Active Directory

Скопируйте в корень диска C:\ оба сценария, NewComputerAccount.vbs и SetComputerpass.vbs.

  • NewComputerAccount.vbs - создаст в Active Directory в контейнере Computers новую учетную запись компьютера с нужным вам паролем
  • SetComputerpass.vbs - позволит поменять пароль у уже существующей учетной записи компьютера

На контроллере домена, куда вы скопировали ваши скрипты, откройте командную строку от имени администратора. Перейдите в командной строке в корень диска C:\, через команду cd C:\. Если нужно создать новый компьютер, то введите:

CSCRIPT NewComputerAccount.vbs имя компьютера указанного в SSO /p Пароль указанный в SSO /d имя домена

CSCRIPT NewComputerAccount.vbs servicedesksso /p пароль /d pyatilistnik

Если нужно сменить пароль, то конструкция будет такой

CSCRIPT SetComputerPass.vbs имя компьютера указанного в SSO /p Пароль указанный в SSO /d DomainName

CSCRIPT SetComputerPass.vbs servicedesksso /p пароль /d pyatilistnik

Так же я вас советую включить логирование на вашем сервере ManageEngine ServiceDesk, поставив соответствующую галку в SSO. Логи будут лежать в C:\ManageEngine\ServiceDesk\logssso.txt

Распространенные ошибки смотрите на сайте разработчика

Настройка браузера для SSO

Откройте ваш Internet Explorer и перейдите в его свойства.

SSO Internet Explorer

Перейдите на вкладку "Безопасность" далее "Местная интрасеть - Сайты" нажимаем кнопку "Дополнительно" и добавляем адрес нашего ManageEngine ServiceDesk в узлы.

Добавление сайта в интрасеть

Установите на интрасети, низкий уровень безопасности и нажмите кнопку "Другой"

Настройка SSO IE

Активируйте пункт "Автоматический вход в сеть с текущим именем пользователя и паролем"

Настройка SSO IE-2

Далее сохраните настройки и перейдите на вкладку "Дополнительно" и активируйте галку "Разрешить встроенную проверку подлинности Windows"

Настройка SSO IE-3

После этого закройте Internet Explorer и заново откройте. Проверьте сквозную авторизацию в ManageEngine ServiceDesk.

Включаем Kerberos аутентификацию в Google Chrome

Google Chrome берет все настройки SSO из Internet Explorer, так что настройте его и еще выполните вот такую команду. Кроме того, нужно отметить, что все новые версии Chrome автоматически определяют наличие поддержки Kerberos. В том случае, если используется одна из старых версий Chrome (Chromium), для корректной авторизации на веб-серверах с помощью Kerberos, его нужно запустить с параметрами:

Настройки, описанные ниже, выполнены в системе Windows Server 2008 Entrerprise.

Для корректной настройки сквозной авторизации с помощью дополнительного приложения необходимо выполнить ряд действий.

Шаг 1. Установить компонент Windows – Проверка подлинности. Для этого необходимо нажать на кнопку Пуск – Администрирование – Диспетчер сервера и в открывшемся окне (рис. 1) в разделе Роли нажать на кнопку Добавить роли и/или Добавить службы ролей.


Рис. 1. Диспетчер сервера. Блок "Роли". Кнопки " Добавить роли" и "Добавить службы ролей"

В открывшемся окне (рис. 2) необходимо проверить, установлена ли служба Веб-сервер – Безопасность – Windows – Проверка подлинности. В том случае, если данная служба не установлена, необходимо установить соответствующий флажок и нажать на кнопку Установить.


Рис. 2. Окно "Добавление служб ролей". Группа "Безопасность"

Шаг 2. Запустить командную строку (Пуск – Выполнить – cmd) от имени администратора системы и выполнить в ней следующие команды (рис. 3):

2.1. %windir%\system32\inetsrv\appcmd.exe unlock config /section:windowsAuthentication

2.2.%windir%\system32\inetsrv\appcmd.exe set config " ELMA3-Standart " /section:windowsAuthentication /enabled:true


Рис. 3. Командная строка. Выполнение требуемых команд

В п. 2.2 приведен пример команды для конфигурирования сайта "ELMA3-Standart", создаваемого по умолчанию в IIS при установке системы ELMA редакции Стандарт. В том случае, если используется другая редакция системы или сайт был сконфигурирован вручную, необходимо заменить название "ELMA3-Standart" на название сайта, отображаемое в списке сайтов Диспетчера служб IIS операционной системы Windows.

Шаг 3. Открыть Диспетчер сервера (Пуск – Администрирование – Диспетчер сервера) и в блоке Роли – Веб-сервер (IIS) – Диспетчер служб IIS добавить новое приложение (рис. 4).


Рис. 4. Диспетчер сервера. Добавление нового приложения в "Диспетчер служб IIS"

В открывшемся диалоговом окне (рис. 5) необходимо заполнить в поле Псевдоним ввести значение "SSPI", а в поле Физический путь – ..\<Общая папка с файлами системы ELMA>\Web\SSPI и нажать на кнопку ОК.


Шаг 4. Открыть Диспетчер служб IIS (Пуск – Администрирование – Диспетчер служб IIS):

перейти в добавленное приложение SSPI – Проверка подлинности и нажать на кнопку Поставщики (рис. 6). В открывшемся диалоговом окне необходимо пункт NTLM переместить на первую позицию и нажать на кнопку ОК.


Рис. 6. Диспетчер служб IIS. Проверка подлинности Windows. Настройка поставщиков

перейти в добавленное приложение SSPI – Анонимная проверка подлинности и нажать на кнопку Отключить (рис. 7).


Рис. 7. Диспетчер служб IIS. Анонимная проверка подлинности. Кнопка "Отключить"

Шаг 5. В файле Web.config, по умолчанию расположенном в папке ../<Общая папка с файлами системы ELMA>/Web, изменить значение параметра loginUrl тега forms следующим образом (рис. 8):


Шаг 6. Далее необходимо в веб-браузере добавить сервер ELMA в зону Местная интрасеть и Надежные узлы и установить низкий уровень безопасности. Следует отметить, что настройка по данному пункту должна применяться ко всем рабочим станциям (ПК пользователей), состоящих в домене, с которым настроена авторизация. Для это необходимо в веб-браузере:

перейти к настройкам веб-браузера (Сервис – Свойства обозревателя). В открывшемся диалоговом окне (рис. 9) необходимо перейти на вкладку Безопасность и для зоны Местная интрасеть и Надежные узлы установить переключатель уровня безопасности в положение Ниже среднего.


Рис. 9. Диалоговое окно "Свойства обозревателя". Вкладка "Безопасность"


Рис. 10. Диалоговое окно "Свойства обозревателя". Вкладка "Безопасность". Диалоговое окно "Надежные узлы"

перейти к настройкам веб-браузера (Настройка и управление Google Chrome – Настройки – Дополнительные) в группе Система нажать на кнопку Настройки прокси-сервера. Открывшееся диалоговое окно (рис. 9) и порядок дальнейших действий аналогичны действиям, описанным для веб-браузера Internet Explorer .

Также в веб-браузерах Internet Explorer и Google Chrome необходимо разрешить Автоматический вход в сеть с текущим именем пользователя и паролем. Для этого необходимо на вкладке Безопасность нажать на кнопку Другой… и в окне Параметры безопасности – зона надежных узлов (рис. 11) в группе Проверка подлинности пользователя установить переключатель Автоматический вход в сеть с текущим именем пользователя и паролем. Для сохранения внесенных изменений необходимо нажать на кнопку ОК и в открывшемся диалоговом окне подтвердить внесение изменений.


Рис. 11. Диалоговое окно "Свойства обозревателя". Вкладка "Безопасность". Диалоговое окно " Параметры безопасности – зона надежных узлов"

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