Подробное руководство по безопасности сквозной проверки подлинности Microsoft Entra
В этой статье приведено более подробное описание работы сквозной проверки подлинности Microsoft Entra. Он фокусируется на аспектах безопасности функции. Эта статья посвящена безопасности и ИТ-администраторам, главным сотрудникам по соответствию требованиям и безопасности, а также другим ИТ-специалистам, отвечающим за безопасность ИТ и соответствие требованиям в организациях или предприятиях любого размера.
К темам, рассмотренным, относятся:
- Подробные технические сведения об установке и регистрации агентов проверки подлинности.
- Подробные технические сведения о шифровании паролей во время входа пользователя.
- Безопасность каналов между локальными агентами проверки подлинности и идентификатором Microsoft Entra.
- Подробные технические сведения о том, как обеспечить безопасность агентов проверки подлинности.
Возможности безопасности ключа сквозной проверки подлинности
Сквозная проверка подлинности имеет следующие ключевые возможности безопасности:
- Он основан на безопасной многотенантной архитектуре, которая обеспечивает изоляцию запросов на вход между клиентами.
- Локальные пароли никогда не хранятся в облаке в любой форме.
- Локальные агенты проверки подлинности, которые прослушивают и отвечают на запросы проверки пароля, делают только исходящие подключения из сети. Для установки этих агентов проверки подлинности в сети периметра (также известной как DMZ, демилитаризованная зона и экранированная подсеть). Рекомендуется обрабатывать все серверы, на которых выполняются агенты проверки подлинности, как системы уровня 0 (см . справочник).
- Только стандартные порты (порт 80 и порт 443) используются для исходящего подключения от агентов проверки подлинности к идентификатору Microsoft Entra. Вам не нужно открывать входящие порты на брандмауэре.
- Порт 443 используется для всех исходящих подключений, прошедших проверку подлинности.
- Порт 80 используется только для скачивания списков отзыва сертификатов (CRLS), чтобы убедиться, что ни один из сертификатов, используемых этой функцией, не был отменен.
- Полный список требований к сети см. в кратком руководстве по сквозной проверке подлинности Microsoft Entra.
- Пароли, предоставляемые пользователями во время входа, шифруются в облаке, прежде чем локальные агенты проверки подлинности принимают их для проверки в Windows Server Active Directory (Windows Server AD).
- Канал HTTPS между идентификатором Microsoft Entra и локальным агентом проверки подлинности защищен с помощью взаимной проверки подлинности.
- Сквозная проверка подлинности защищает учетные записи пользователей путем простой работы с политиками условного доступа Microsoft Entra, включая многофакторную проверку подлинности (MFA), блокируя устаревшую проверку подлинности и отфильтровав атаки подбора паролей.
Компоненты, участвующие в сквозной проверке подлинности
Общие сведения об операционной, службе и безопасности данных для идентификатора Microsoft Entra см. в центре управления безопасностью. При использовании сквозной проверки подлинности для входа пользователей используются следующие компоненты:
- Служба маркеров безопасности Microsoft Entra (Microsoft Entra STS): без отслеживания состояния, которая обрабатывает запросы на вход и выдает маркеры безопасности для браузеров пользователей, клиентов или служб по мере необходимости.
- Служебная шина Azure. Обеспечивает облачную связь с корпоративным обменом сообщениями и ретрансляторами, которые помогают подключать локальные решения к облаку.
- Агент проверки подлинности Microsoft Entra Connect: локальный компонент, который прослушивает запросы проверки пароля и отвечает на них.
- База данных SQL Azure. Содержит сведения об агентах проверки подлинности клиента, включая их метаданные и ключи шифрования.
- Windows Server AD: локальная служба Active Directory, где хранятся учетные записи пользователей и их пароли.
Установка и регистрация агентов проверки подлинности
Агенты проверки подлинности устанавливаются и регистрируются с идентификатором Microsoft Entra при выполнении одного из следующих действий:
- Включение сквозной проверки подлинности через Microsoft Entra Connect
- Добавление дополнительных агентов проверки подлинности для обеспечения высокой доступности запросов на вход
Получение рабочего агента проверки подлинности включает три основных этапа:
- Установка
- Регистрация
- Инициализация
В следующих разделах подробно рассматриваются эти этапы.
Установка агента проверки подлинности
Только учетная запись администратора гибридного удостоверения может установить агент проверки подлинности (с помощью Microsoft Entra Connect или автономного экземпляра) на локальном сервере.
Установка добавляет две новые записи в список в панель управления> Programs Program and>Features:
- Само приложение агента проверки подлинности. Это приложение выполняется с привилегиями NetworkService .
- Приложение Updater, которое используется для автоматического обновления агента проверки подлинности. Это приложение выполняется с привилегиями LocalSystem .
Важный
С точки зрения безопасности администраторы должны рассматривать сервер, на котором запущен агент сквозной проверки подлинности, как если бы он был контроллером домена. Серверы агента агента сквозной проверки подлинности должны быть защищены, как описано в защищенных контроллерах домена для атак.
Регистрация агента проверки подлинности
После установки агента проверки подлинности он регистрируется с помощью идентификатора Microsoft Entra. Идентификатор Microsoft Entra назначает каждому агенту проверки подлинности уникальный цифровой сертификат удостоверения, который он может использовать для безопасного взаимодействия с идентификатором Microsoft Entra.
Процедура регистрации также привязывает агент проверки подлинности к клиенту. Затем идентификатор Microsoft Entra знает, что этот конкретный агент проверки подлинности является единственным, который авторизован для обработки запросов на проверку пароля для вашего клиента. Эта процедура повторяется для каждого нового зарегистрированного агента проверки подлинности.
Агенты проверки подлинности используют следующие действия, чтобы зарегистрировать себя в идентификаторе Microsoft Entra.
Microsoft Entra сначала запрашивает вход администратора гибридного удостоверения в идентификатор Microsoft Entra с помощью учетных данных. Во время входа агент проверки подлинности получает маркер доступа, который он может использовать от имени пользователя.
Затем агент проверки подлинности создает пару ключей: открытый ключ и закрытый ключ.
- Пара ключей создается с помощью стандартного шифрования RSA 2048-разрядного шифрования.
- Закрытый ключ остается на локальном сервере, где находится агент проверки подлинности.
Агент проверки подлинности отправляет запрос на регистрацию идентификатора Microsoft Entra по протоколу HTTPS, включаемые в запрос, следующими компонентами:
- Маркер доступа, полученный агентом.
- Открытый ключ, созданный.
- Запрос на подпись сертификата (CSR или запрос на сертификат). Этот запрос применяется к цифровому сертификату удостоверения с идентификатором Microsoft Entra в качестве центра сертификации (ЦС).
Идентификатор Microsoft Entra проверяет маркер доступа в запросе на регистрацию и проверяет, поступил ли запрос от администратора гибридного удостоверения.
Затем идентификатор Microsoft Entra подписывает цифровой сертификат удостоверения и отправляет его обратно агенту проверки подлинности.
- Корневой ЦС в идентификаторе Microsoft Entra используется для подписи сертификата.
Заметка
Этот ЦС не находится в хранилище доверенных корневых центров сертификации Windows.
- ЦС используется только функцией сквозной проверки подлинности. ЦС используется только для подписывания CSR во время регистрации агента проверки подлинности.
- Ни другая служба Microsoft Entra не использует этот ЦС.
- Субъект сертификата (также называемый различающееся имя или DN) имеет идентификатор клиента. Это ИДЕНТИФИКАТОР DN, который однозначно идентифицирует ваш клиент. Этот DN областью действия сертификата используется только для вашего клиента.
Идентификатор Microsoft Entra хранит открытый ключ агента проверки подлинности в базе данных в База данных SQL Azure. Доступ к базе данных может получить только идентификатор Microsoft Entra.
Выданный сертификат хранится на локальном сервере в хранилище сертификатов Windows (в частности, в CERT_SYSTEM_STORE_LOCAL_MACHINE). Сертификат используется агентом проверки подлинности и приложением Updater.
Инициализация агента проверки подлинности
Когда агент проверки подлинности запускается в первый раз после регистрации или после перезапуска сервера, он должен безопасно взаимодействовать со службой Microsoft Entra, чтобы начать принимать запросы на проверку паролей.
Вот как инициализированы агенты проверки подлинности:
- Агент проверки подлинности отправляет исходящий запрос начальной загрузки в идентификатор Microsoft Entra. Этот запрос выполняется через порт 443 и выполняется через канал HTTPS, прошедший взаимную проверку подлинности. Запрос использует тот же сертификат, который был выдан во время регистрации агента проверки подлинности.
- Идентификатор Microsoft Entra отвечает на запрос, предоставляя ключ доступа к очереди служебная шина, уникальной для вашего клиента, и которая определяется идентификатором клиента.
- Агент проверки подлинности выполняет постоянное исходящее подключение HTTPS (через порт 443) к очереди.
Агент проверки подлинности теперь готов к получению и обработке запросов на проверку пароля.
Если в клиенте зарегистрировано несколько агентов проверки подлинности, процедура инициализации гарантирует, что каждый агент подключается к одной и той же очереди служебная шина.
Как сквозная проверка подлинности обрабатывает запросы на вход
На следующей схеме показано, как сквозная проверка подлинности обрабатывает запросы на вход пользователей.
Как сквозная проверка подлинности обрабатывает запрос на вход пользователя:
- Пользователь пытается получить доступ к приложению, например Outlook Web App.
- Если пользователь еще не вошел в систему, приложение перенаправляет браузер на страницу входа Microsoft Entra.
- Служба Microsoft Entra STS отвечает на страницу входа пользователя.
- Пользователь вводит имя пользователя на странице входа пользователя, а затем нажмите кнопку "Далее ".
- Пользователь вводит пароль на странице входа пользователя и нажимает кнопку входа .
- Имя пользователя и пароль отправляются в службу STS Microsoft Entra в запросе HTTPS POST.
- Microsoft Entra STS извлекает открытые ключи для всех агентов проверки подлинности, зарегистрированных в клиенте из База данных SQL Azure, и шифрует пароль с помощью ключей. Он создает одно зашифрованное значение пароля для каждого агента проверки подлинности, зарегистрированного в клиенте.
- Служба STS Microsoft Entra помещает запрос на проверку пароля, состоящий из имени пользователя и зашифрованных значений паролей, в очереди служебная шина, относящуюся к вашему клиенту.
- Так как инициализированные агенты проверки подлинности постоянно подключены к очереди служебная шина, один из доступных агентов проверки подлинности получает запрос на проверку пароля.
- Агент проверки подлинности использует идентификатор для поиска зашифрованного значения пароля, относящегося к открытому ключу. Он расшифровывает открытый ключ с помощью закрытого ключа.
- Агент проверки подлинности пытается проверить имя пользователя и пароль для Windows Server AD с помощью API Win32 LogonUser с заданным параметром
LOGON32_LOGON_NETWORK
dwLogonType
.- Этот API является тем же API, который используется службы федерации Active Directory (AD FS) (AD FS) для входа пользователей в федеративном сценарии входа.
- Этот API использует стандартный процесс разрешения в Windows Server для поиска контроллера домена.
- Агент проверки подлинности получает результат из Windows Server AD, например успешно, имя пользователя или пароль неверный или срок действия пароля истек.
Заметка
Если агент проверки подлинности завершается ошибкой во время процесса входа, весь запрос на вход удаляется. Запросы на вход не передаются из одного локального агента проверки подлинности в другой локальный агент проверки подлинности. Эти агенты взаимодействуют только с облаком, а не друг с другом.
- Агент проверки подлинности перенаправит результат обратно в службу STS Microsoft Entra по исходящему каналу HTTPS через порт 443. Взаимная проверка подлинности использует сертификат, выданный агенту проверки подлинности во время регистрации.
- Служба STS Microsoft Entra проверяет, соответствует ли этот результат конкретному запросу на вход в клиент.
- Microsoft Entra STS продолжается с процедурой входа, как настроено. Например, если проверка пароля прошла успешно, пользователь может быть оспорлен для MFA или перенаправляться обратно в приложение.
Операционная безопасность агента проверки подлинности
Чтобы обеспечить безопасность сквозной проверки подлинности, идентификатор Microsoft Entra периодически обновляет сертификаты агента проверки подлинности. Идентификатор Microsoft Entra активирует продление. Обновления не управляются самими агентами проверки подлинности.
Чтобы продлить доверие агента проверки подлинности с помощью идентификатора Microsoft Entra, выполните следующие действия.
- Агент проверки подлинности выполняет проверку подлинности Microsoft Entra каждые несколько часов, чтобы проверить, нужно ли обновить сертификат. Сертификат обновляется через 30 дней до истечения срока его действия. Эта проверка выполняется через канал HTTPS с взаимной проверкой подлинности и использует тот же сертификат, который был выдан во время регистрации.
- Если служба указывает, что пришло время продлить, агент проверки подлинности создает новую пару ключей: открытый ключ и закрытый ключ.
- Эти ключи создаются с помощью стандартного шифрования RSA 2048-разрядного шифрования.
- Закрытый ключ никогда не покидает локальный сервер.
- Затем агент проверки подлинности отправляет запрос на продление сертификата в идентификатор Microsoft Entra по протоколу HTTPS. В запрос включаются следующие компоненты:
- Существующий сертификат, полученный из расположения CERT_SYSTEM_STORE_LOCAL_MACHINE в хранилище сертификатов Windows.
- Открытый ключ, созданный на шаге 2.
- A CSR. Этот запрос применяется к новому цифровому сертификату удостоверения с идентификатором Microsoft Entra в качестве своего ЦС.
- Идентификатор Microsoft Entra проверяет существующий сертификат в запросе на продление сертификата. Затем он проверяет, поступил ли запрос от агента проверки подлинности, зарегистрированного в клиенте.
- Если существующий сертификат по-прежнему действителен, идентификатор Microsoft Entra подписывает новый цифровой сертификат удостоверения и выдает новый сертификат обратно агенту проверки подлинности.
- Если срок действия существующего сертификата истек, идентификатор Microsoft Entra удаляет агент проверки подлинности из списка зарегистрированных агентов проверки подлинности клиента. Затем администратор гибридного удостоверения должен вручную установить и зарегистрировать новый агент проверки подлинности.
- Чтобы подписать сертификат, используйте корневой ЦС идентификатора Microsoft Entra ID.
- Задайте идентификатор DN сертификата идентификатору клиента, идентификатору GUID, который однозначно идентифицирует ваш клиент. DN ограничивает сертификат только для вашего клиента.
- Идентификатор Microsoft Entra хранит новый открытый ключ агента проверки подлинности в базе данных в База данных SQL Azure доступ только к нему. Он также делает недействительным старый открытый ключ, связанный с агентом проверки подлинности.
- Затем новый сертификат (выданный на шаге 5) хранится на сервере в хранилище сертификатов Windows (в частности, в расположении CERT_SYSTEM_STORE_CURRENT_USER ).
Так как процедура продления доверия выполняется неинтерактивно (без присутствия администратора гибридного удостоверения), агент проверки подлинности больше не имеет доступа к обновлению существующего сертификата в расположении CERT_SYSTEM_STORE_LOCAL_MACHINE.
Заметка
Эта процедура не удаляет сам сертификат из расположения CERT_SYSTEM_STORE_LOCAL_MACHINE. 9. С этого момента новый сертификат используется для проверки подлинности. Каждое последующее продление сертификата заменяет сертификат в расположении CERT_SYSTEM_STORE_LOCAL_MACHINE.
Автоматическое обновление агента проверки подлинности
Приложение Updater автоматически обновляет агент проверки подлинности при выпуске новой версии (с исправлениями ошибок или улучшениями производительности). Приложение Updater не обрабатывает запросы на проверку паролей для клиента.
Идентификатор Microsoft Entra id размещает новую версию программного обеспечения в виде подписанного пакета установщика Windows (MSI). MSI подписан с помощью Microsoft Authenticode с SHA-256 в качестве алгоритма дайджеста.
Чтобы автоматически обновить агент проверки подлинности, выполните приведенные далее действия.
- Приложение Updater отправляет проверку подлинности Microsoft Entra каждый час, чтобы проверить, доступна ли новая версия агента проверки подлинности. Эта проверка выполняется через канал HTTPS с взаимной проверкой подлинности, используя тот же сертификат, который был выдан во время регистрации. Агент проверки подлинности и updater используют сертификат, хранящийся на сервере.
- Если доступна новая версия, идентификатор Microsoft Entra возвращает подписанный MSI обратно в updater.
- Средство обновления проверяет, подписан ли MSI корпорацией Майкрософт.
- Центр обновления запускает MSI. В этом процессе приложение Updater:
Заметка
Обновление выполняется с правами локальной системы .
- Останавливает службу агента проверки подлинности.
- Устанавливает новую версию агента проверки подлинности на сервере.
- Перезапуск службы агента проверки подлинности.
Заметка
Если в клиенте зарегистрировано несколько агентов проверки подлинности, идентификатор Microsoft Entra не обновляет свои сертификаты или не обновляет их одновременно. Вместо этого идентификатор Microsoft Entra обновляет сертификаты по одному за раз, чтобы обеспечить высокий уровень доступности запросов на вход.
Дальнейшие действия
- Текущие ограничения. Узнайте, какие сценарии поддерживаются.
- Краткое руководство. Настройка с помощью сквозной проверки подлинности Microsoft Entra.
- Миграция с AD FS на сквозную проверку подлинности. Ознакомьтесь с этим подробным руководством, которое помогает перейти от AD FS или других технологий федерации к сквозной проверке подлинности.
- Smart Lockout: настройте функцию Smart Lockout в клиенте для защиты учетных записей пользователей.
- Как это работает: узнайте, как работает сквозная проверка подлинности Microsoft Entra.
- Часто задаваемые вопросы: поиск ответов на распространенные вопросы.
- Устранение неполадок. Узнайте, как устранить распространенные проблемы с сквозной проверкой подлинности.
- Microsoft Entra простой единый вход. Дополнительные сведения о дополнительном компоненте Microsoft Entra Простой единый вход.