При запросе клиентами доступа к опубликованным внутренним ресурсам проверка подлинности в Шлюз Microsoft Forefront Threat Management осуществляется в три этапа.

На следующем рисунке показана процедура проверки подлинности на основе форм. Обратите внимание, что это упрощенная схема процедуры, на которой представлены только основные ее этапы.

Этап 1. Получение учетных данных клиента. Клиент направляет запрос на подключение к корпоративному серверу веб-клиента Outlook во Внутренней сети. Клиент предоставляет учетные данные в формате HTML.

Этапы 2 и 3. Пересылка учетных данных. Forefront TMG пересылает учетные данные службе проверки подлинности, например контроллеру домена для проверки подлинности Active Directory или серверу RADIUS, и получает от нее подтверждение, что пользователь прошел проверку.

Этап 4. Делегирование проверки подлинности. Forefront TMG пересылает запрос клиента на сервер веб-клиента Outlook и проходит на нем проверку подлинности с помощью учетных данных клиента. Сервер веб-клиента Outlook проводит повторную проверку учетных данных, обычно с помощью той же службы проверки подлинности.

Примечание.
Веб-сервер должен быть настроен на использование схемы проверки подлинности, соответствующей методу делегирования, который используется Forefront TMG.

Этап 5. Ответ от веб-сервера. Сервер веб-клиента Outlook посылает клиенту ответ, который перехватывается Forefront TMG.

Этап 6. Пересылка ответа. Forefront TMG пересылает ответ клиенту.

Примечания

Методы проверки подлинности клиента для получения его учетных данных

Веб-прослушиватели Шлюз Microsoft Forefront Threat Management позволяют производить проверку подлинности клиента следующих типов.

  • Без проверки.

  • Проверка подлинности на основе форм

  • Проверка подлинности HTTP (данные передаются в заголовке протокола HTTP)

  • Проверка подлинности сертификата клиента

Без проверки

Forefront TMG можно настроить так, что он не будет требовать проверки подлинности. При этом становится невозможной настройка метода делегирования для правил, использующих данный веб-прослушиватель.

Проверка подлинности на основе форм

Для публикации веб-серверов в Forefront TMG можно использовать проверку подлинности на основе форм. В Forefront TMG доступны три способа проверки подлинности на основе форм.

  • Форма для ввода пароля. В эту форму вводятся имя пользователя и пароль. Это тип учетных данных, который принимают для проверки служба каталогов Active Directory, протокол LDAP и протокол RADIUS.

  • Форма для ввода секретного кода. В эту форму вводятся имя пользователя и секретный код. Это тип учетных данных, который требуется для проверок SecurID и одноразового пароля протокола RADIUS.

  • Форма для ввода секретного кода и пароля. В эту форму вводятся имя пользователя и секретный код, а также имя пользователя и пароль. Имя пользователя и секретный код используются для проверки подлинности на сервере Forefront TMG с помощью методов SecurID или одноразового пароля протокола RADIUS, а имя пользователя и пароль применяются для делегирования.

Откат к обычной проверке подлинности

По умолчанию, если для клиента не может быть использована проверка подлинности на основе форм, Forefront TMG требует вместо этого обычной проверки подлинности. Этот параметр настраивается с помощью COM-объекта Forefront TMG, входящего в коллекцию сопоставлений агента пользователя:

FPCRuleElements.UserAgentMappings

Дополнительные сведения см. в статье «Managing User-Agent Mappings» на веб-узле Microsoft TechNet.

Формы для мобильных клиентов

В Forefront TMG имеются формы для различных мобильных клиентов. Эти формы хранятся в папках CHTML и XHTML (формы XHTML-MP), которые расположены в следующем месте:

Forefront TMG Installation Directory\Templates\CookieAuthTemplates

Для определения типа формы, который необходимо предоставить, Forefront TMG использует заголовок агента пользователя, предоставляемый мобильным клиентом.

Управление паролями при проверке подлинности на основе форм

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

Если пользователям разрешена смена паролей, она производится на форме входа. Если в Forefront TMG настроены предупреждения об истечении срока действия паролей, выводится отдельная страница с предупреждением, на которой пользователи могут по желанию произвести смену пароля. Инструкции по настройке функции смены пароля см. в разделе Настройка функции смены пароля.

Примечания

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

  • Если Forefront TMG настроен на требование проверки подлинности, а правило публикации при этом применяется к определенному набору пользователей или категории Все прошедшие проверку пользователи, либо если в веб-прослушивателе выбран параметр Требовать проверки подлинности всех пользователей, Forefront TMG проверяет учетные данные перед пересылкой запроса.

  • По умолчанию форма предоставляется Forefront TMG на языке, соответствующем языковым настройкам веб-обозревателя клиента. Forefront TMG обеспечивает вывод форм на 26 языках. Forefront TMG может также быть настроен на вывод форм на определенном языке вне зависимости от настроек обозревателя.

Примечания по безопасности

  • При настройке времени ожидания для проверки подлинности на основе форм рекомендуется, чтобы значение этого периода было меньше, чем установлено опубликованным сервером. Если опубликованный сервер прекращает работу раньше компьютера Forefront TMG, пользователь может ошибочно предположить, что сеанс завершен. Этим могут воспользоваться злоумышленники и использовать сеанс, который остается открытым до тех пор, пока не будет закрыт пользователем или Forefront TMG в соответствии с параметрами формы.

  • Прежде чем публиковать веб-приложение с использованием Forefront TMG, следует убедиться, что оно защищено от атак «session riding» (также известных как «cross-site-posting», «cross-site-request-forgery» и «атака с приманкой»). Это особенно важно в случае публикации веб-серверов через Forefront TMG, поскольку для доступа к любым веб-узлам через публикующий межсетевой экран Forefront TMG клиентами должен использоваться одинаковый уровень доверия.

  • В сценарии проверки подлинности на основе форм, если требуется сертификат клиента, а пользователь отказывается его предоставить, он может получить доступ к форме входа. Однако затем Forefront TMG запретит вход из-за отсутствия сертификата клиента.

  • Настройка форм производится путем изменения файла Strings.txt. Если файл Strings.txt предоставляется для изменений третьей стороне, необходимо проверить, что к файлу не были добавлены нетекстовые данные, поскольку они могут послужить средством для проведения атак на сети.

Проверка подлинности HTTP

В Forefront TMG поддерживаются следующие способы проверки подлинности HTTP.

  • Обычная проверка подлинности - клиент, направивший запрос, должен ввести учетные данные. Forefront TMG проверяет учетные данные и использует их при передаче запроса веб-серверу для проверки подлинности на нем в соответствии с выбранным методом делегирования. Веб-сервер должен быть настроен на использование схемы проверки подлинности, соответствующей методу делегирования, который используется Forefront TMG. Дополнительные сведения об обычной проверке подлинности см. в разделе Методы проверки подлинности.

  • Проверка подлинности Digest и WDigest - пользователь производит запрос. Forefront TMG отклоняет запрос и запрашивает у клиента данные для проверки подлинности. Учетные данные пересылаются контроллеру домена на проверку. Дополнительные сведения см. в разделе Методы проверки подлинности.

  • Встроенная проверка подлинности Windows (NTLM) - используются механизмы проверки подлинности NTLM, Kerberos и Negotiate. Для проверки подлинности используются текущая информация Windows на клиентском компьютере. Если проверку подлинности пройти не удается, веб-обозреватель выдает пользователю запрос до тех пор, пока не будут введены верные учетные данные или не будет закрыто диалоговое окно. Дополнительные сведения об этом методе проверке подлинности см. в разделе Методы проверки подлинности.

Проверка подлинности сертификата клиента

В случае использования сертификата клиента Forefront TMG проводит проверку подлинности клиента на основе предоставленного им сертификата. Это может быть сертификат на смарт-карте или сертификат, используемый мобильным устройством для подключения к Microsoft ActiveSync.

Методы проверки учетных данных клиента

Forefront TMG поддерживает следующие типы серверов для проверки учетных данных клиента.

  • Без проверки (проверка подлинности может производиться внутренними серверами)

  • Windows Active Directory

  • LDAP-сервер

  • RADIUS

  • Одноразовый пароль RADIUS

  • SecurID

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

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

Делегирование проверки подлинности

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

  • Без делегирования, клиент не может выполнять проверку подлинности напрямую

  • Без делегирования, но клиент может выполнять проверку подлинности напрямую

  • Обычная

  • NTLM

  • NTLM/Kerberos (Negotiate)

  • SecurID

  • Ограниченное делегирование Kerberos

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

Делегирование учетных данных клиента настраивается в правиле публикации. При запуске мастера создания правила публикации настройка производится на странице Делегирование проверки подлинности. В свойствах правила публикации параметры проверки подлинности находятся на вкладке Делегирование проверки подлинности.

Без делегирования, клиент не может выполнять проверку подлинности напрямую

При выборе этого параметра Forefront TMG не делегирует учетные данные. Это делается во избежание непреднамеренного делегирования учетных данных в организацию, где они могут быть перехвачены. Этот параметр является параметром по умолчанию для некоторых мастеров публикации Шлюз Microsoft Forefront Threat Management, поэтому для делегирования учетных данных необходимо изменить настройки по умолчанию.

Без делегирования, но клиент может выполнять проверку подлинности напрямую

При выборе метода делегирования Без делегирования, но клиент может выполнять проверку подлинности напрямую Forefront TMG передает учетные данные пользователя серверу назначения, не выполняя со своей стороны никаких дополнительных действий. Далее клиент и сервер назначения согласовывают способ проверки подлинности.

Обычное

При использовании обычного делегирования Forefront TMG передает учетные данные в текстовом формате серверу, требующему проверки подлинности. Если проверку подлинности пройти не удается, Forefront TMG просит пользователя пройти проверку подлинности в соответствии с указанным в веб-прослушивателе способом. Если серверу требуются учетные данные иного типа, выдается оповещение Forefront TMG.

NTLM

В случае делегирования NTLM Forefront TMG делегирует учетные данные с помощью протокола проверки подлинности NTLM с запросом и подтверждением. Если проверку подлинности пройти не удается, Forefront TMG вместо делегирования использует тип проверки подлинности, настроенный в веб-прослушивателе. Если серверу требуются учетные данные иного типа, выдается оповещение Forefront TMG.

NTLM/Kerberos (Negotiate)

При выборе параметра Negotiate в качестве метода делегирования Forefront TMG сперва пытается получить для клиента билет Kerberos от контроллера домена. Если Forefront TMG не удается получить билет Kerberos, схема согласования используется для делегирования учетных данных с помощью NTLM. Если Forefront TMG удается получить билет Kerberos, схема согласования используется для делегирования учетных данных с помощью Kerberos. Если проверку подлинности пройти не удается, Forefront TMG передает пользователю сообщение об ошибке с сервера. Если серверу требуются учетные данные иного типа, выдается оповещение Forefront TMG.

По умолчанию имя участника-службы (SPN) для получения билета - http/internalsitename. В случае использования фермы серверов имя участника-службы соответствует имени фермы. Имя участника-службы по умолчанию можно изменить с помощью диспетчера Forefront TMG на вкладке Делегирование проверки подлинности правила.

Примечание.
В Microsoft Exchange Server 2003 службы IIS используют учетную запись «Сетевая служба». Forefront TMG использует шаблон SPN HTTP\* и заменяет подстановочный символ (*) именем опубликованного веб-узла.

SecurID

Если клиент предоставляет учетные данные SecurID, можно использовать делегирование проверки подлинности SecurID. Forefront TMG передает специальный файл cookie SecurID опубликованному серверу. Обратите внимание, что секрет домена и имя файла cookie для сервера Forefront TMG и опубликованного сервера должны совпадать.

Ограниченное делегирование Kerberos

Ограниченное делегирование Kerberos поддерживается, начиная с версии ISA Server 2006. Дополнительные сведения об ограниченном делегировании Kerberos см. в разделе Смена протокола и ограниченное делегирование Kerberos.

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

Если проверку подлинности пройти не удается, Forefront TMG передает пользователю сообщение об ошибке с сервера. Если серверу требуются учетные данные иного типа, выдается оповещение Forefront TMG.

Примечание

  • Использование ограниченного делегирования Kerberos требует настройки Active Directory на определение сервера Forefront TMG в качестве доверенного для делегирования.

  • По умолчанию имя участника-службы для получения билета - http/internalsitename. В случае использования фермы серверов имя участника-службы соответствует имени фермы. Имя участника-службы по умолчанию можно изменить с помощью диспетчера Forefront TMG на вкладке Делегирование проверки подлинности правила.

  • Для использования ограниченного делегирования Kerberos необходим режим работы домена Windows Server 2003 или более высокий режим.

  • Проверка подлинности Kerberos выполняется с помощью UDP-пакетов. Они часто фрагментируются. Если сервер Forefront TMG находится в домене и включено блокирование IP-фрагментов, проверка подлинности Kerberos будет невозможна. Например, если компьютер использует протокол Kerberos для проверки подлинности при выполнении входа пользователя в систему, вход выполнить не удастся. При использовании проверки подлинности Kerberos не рекомендуется включать блокирование пакетов, содержащих IP-фрагменты.

  • SharePoint Portal Server 2003 по умолчанию отключает протокол Kerberos, поэтому при публикации SharePoint использование ограниченного делегирования Kerberos и NTLM/Kerberos (Negotiate) невозможно. Чтобы включить протокол Kerberos, следуйте инструкциям на веб-узле Майкрософт .

  • В Microsoft Exchange Server 2003 службы IIS используют учетную запись «Сетевая служба». Forefront TMG использует шаблон SPN HTTP\* и заменяет подстановочный символ (*) именем опубликованного веб-узла.

Допустимые сочетания учетных данных клиента и методов делегирования

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

Получение учетных данных клиента Служба проверки подлинности Делегирование

Проверка подлинности на основе форм (только пароль)

Обычная

Active Directory (Windows)

Active Directory

LDAP

RADIUS

Без делегирования, но клиент может выполнять проверку подлинности напрямую

Без делегирования, клиент не может выполнять проверку подлинности напрямую

Обычное

NTLM

Согласование

Ограниченное делегирование Kerberos

Дайджест

Встроенная

Active Directory (Windows)

Без делегирования, но клиент может выполнять проверку подлинности напрямую

Без делегирования, клиент не может выполнять проверку подлинности напрямую

Ограниченное делегирование Kerberos

Проверка подлинности на основе форм с секретным кодом

SecurID

Одноразовый пароль RADIUS

Без делегирования, но клиент может выполнять проверку подлинности напрямую

Без делегирования, клиент не может выполнять проверку подлинности напрямую

SecurID

Ограниченное делегирование Kerberos

Проверка подлинности на основе форм (секретный код и пароль)

SecurID

Одноразовый пароль RADIUS

Без делегирования, но клиент может выполнять проверку подлинности напрямую

Без делегирования, клиент не может выполнять проверку подлинности напрямую

Обычная

NTLM

Согласование

SecurID (без одноразового пароля протокола RADIUS)

Сертификат клиента

Active Directory (Windows)

Без делегирования, но клиент может выполнять проверку подлинности напрямую

Без делегирования, клиент не может выполнять проверку подлинности напрямую

Ограниченное делегирование Kerberos