Настройка сквозной авторизации с помощью дополнительного приложения
Примечание
Настройки, описанные ниже, выполнены в системе 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 и нажать на кнопку ОК.
Рис. 5. Диалоговое окно "Добавление приложения"
Шаг 4. Открыть Диспетчер служб IIS (Пуск – Администрирование – Диспетчер служб IIS):
-
перейти в добавленное приложение SSPI – Проверка подлинности и нажать на кнопку Поставщики (рис. 6). В открывшемся диалоговом окне необходимо пункт NTLM переместить на первую позицию и нажать на кнопку ОК.
Рис. 6. Диспетчер служб IIS. Проверка подлинности Windows. Настройка поставщиков
-
перейти в добавленное приложение SSPI – Анонимная проверка подлинности и нажать на кнопку Отключить (рис. 7).
Рис. 7. Диспетчер служб IIS. Анонимная проверка подлинности. Кнопка "Отключить"
Шаг 5. В файле Web.config, по умолчанию расположенном в папке ../<Общая папка с файлами системы ELMA>/Web, изменить значение параметра loginUrl тега forms следующим образом (рис. 8):
<forms name="Elma.V3.Forms.Auth" loginUrl="~/SSPI/Account/LogOn" defaultUrl="~/" protection="All" timeout="5256000" path="/" requireSSL="false" slidingExpiration="true"
enableCrossAppRedirects="false" cookieless="UseCookies" />
Рис. 8. Редактирование файла "Web.config"
Шаг 6. Далее необходимо в веб-браузере добавить сервер ELMA в зону Местная интрасеть и Надежные узлы и установить низкий уровень безопасности. Следует отметить, что настройка по данному пункту должна применяться ко всем рабочим станциям (ПК пользователей), состоящих в домене, с которым настроена авторизация. Для это необходимо в веб-браузере:
перейти к настройкам веб-браузера (Сервис – Свойства обозревателя). В открывшемся диалоговом окне (рис. 9) необходимо перейти на вкладку Безопасность и для зоны Местная интрасеть и Надежные узлы установить переключатель уровня безопасности в положение Ниже среднего.
Рис. 9. Диалоговое окно "Свойства обозревателя". Вкладка "Безопасность"
Далее требуется добавить сервер ELMA к надежным узлам. Для этого необходимо на вкладке Безопасность нажать на кнопку Узлы и в открывшемся диалоговом окне (рис. 10) нажать на кнопку Добавить, а также снять флажок Для всех узлов этой зоны требуется проверка серверов (https:). Для сохранения изменений необходимо нажать на кнопку Закрыть.
Рис. 10. Диалоговое окно "Свойства обозревателя". Вкладка "Безопасность". Диалоговое окно "Надежные узлы"
перейти к настройкам веб-браузера (Настройка и управление Google Chrome – Настройки – Дополнительные) в группе Система нажать на кнопку Настройки прокси-сервера. Открывшееся диалоговое окно (рис. 9) и порядок дальнейших действий аналогичны действиям, описанным для веб-браузера Internet Explorer.
ввести в адресной строке "about:config" и нажать на кнопку Enter. На открывшейся странице необходимо нажать на кнопку Я обещаю, что буду осторожен. На открывшейся странице в строке поиска необходимо ввести "network.negotiate-auth.trusted-uris" и нажать на кнопку Enter. Далее необходимо дважды нажать на найденную строку и в открывшемся диалоговом окне ввести имя сервера ELMA (без префикса http), например, "127.0.0.1:8000".
Также в веб-браузерах Internet Explorer и Google Chrome необходимо разрешить Автоматический вход в сеть с текущим именем пользователя и паролем. Для этого необходимо на вкладке Безопасность нажать на кнопку Другой… и в окне Параметры безопасности – зона надежных узлов (рис. 11) в группе Проверка подлинности пользователя установить переключатель Автоматический вход в сеть с текущим именем пользователя и паролем. Для сохранения внесенных изменений необходимо нажать на кнопку ОК и в открывшемся диалоговом окне подтвердить внесение изменений.
Рис. 11. Диалоговое окно "Свойства обозревателя". Вкладка "Безопасность". Диалоговое окно " Параметры безопасности – зона надежных узлов"
Шаг 7. Тонкая настройка (не обязательно).
Файл Settings.config содержит некоторые настройки, относящиеся к методу авторизации SSPI:
-
SSPI.SecurityKey – ключ AES-256 в формате Base64;
-
SSPI.SecurityVector – вектор инициализации AES-256 в формате Base64;
-
SSPI.CookieName – название cookie;
-
SSPI.TicketLifetime – время жизни cookie в секундах (необязательный параметр, значение по умолчанию – 60 с).
Сайт генерации ключей: http://www.digitalsanctuary.com/aes-key-generator.php (внизу страницы).
Начиная с версии 3.11, сквозная авторизация доступна только пользователям системного модуля авторизации LDAP. В том случае, если сквозная авторизация должна работать для пользователей другого модуля авторизации LDAP, необходимо:
1. Открыть для редактирования файл Settings.config, расположенный в папке ../<Общая папка с файлами системы ELMA>/Web.
2. Раскомментировать строку < add key="SSPI.InstanceUid" value="7EFF5F19-58D1-4904-8699-0A059BAB5F08" />, изменить значение value, указав там локальный номер требуемого модуля авторизации LDAP, и сохранить внесенные изменения. Уникальный номер каждого из модулей авторизации отображается в адресной строке браузера (рис. 12) при переходе на страницу импорта пользователей из модуля (раздел Администрирование – Пользователи).
Рис. 12. Адресная строка браузера
Следует обратить внимание на то, что со сквозной авторизацией одновременно может работать только один модуль LDAP, чей уникальный номер указан в настройках (см. п.2). Для остальных модулей сквозная авторизация будет недоступна.
Для возврата к стандартным настройкам модуля авторизации необходимо закомментировать строку < add key="SSPI.InstanceUid" value="7EFF5F19-58D1-4904-8699-0A059BAB5F08" />.
Внимание!
Для того, чтобы после обновления системы ELMA сквозная авторизация продолжала корректно работать, необходимо в папке ../<Общая папка с файлами системы ELMA>/UserConfig создать новую папку WebApplication, в которой необходимо создать файл web.config.xslt со следующим содержимым:
<?xml version="1.0" ?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output indent="yes" />
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="authentication">
<authentication mode="Forms">
<forms name="Elma.V3.Forms.Auth" loginUrl="~/SSPI/Account/LogOn" defaultUrl="~/" protection="All" timeout="5256000" path="/" requireSSL="false" slidingExpiration="true" enableCrossAppRedirects="false" cookieless="UseCookies"/>
</authentication></xsl:template>
</xsl:stylesheet>
|
См. также: