Вход в удаленный рабочий стол с помощью Windows Hello для бизнеса
Вы можете использовать Windows Hello для бизнеса для входа в сеанс удаленного рабочего стола, используя перенаправленные интеллектуальные карта возможности протокола удаленного рабочего стола (RDP). Это возможно путем развертывания сертификата на устройстве пользователя, который затем используется в качестве предоставленных учетных данных при установке подключения по протоколу RDP к другому устройству Windows.
В этой статье описываются два подхода к развертыванию сертификатов, при которых сертификаты проверки подлинности развертываются в контейнере Windows Hello для бизнеса:
- Использование Microsoft Intune с соединителями SCEP или PKCS
- Использование политики регистрации служб сертификатов Active Directory (AD CS)
Важно.
Если вы развернете сертификат с помощью Microsoft Intune и для управления учетными записями пользователей настроено запрашивать учетные данные на безопасном рабочем столе, вы не сможете использовать функцию запуска от имени. В этом случае при попытке выполнить приложение с повышенными привилегиями и выбрать Windows Hello для бизнеса учетные данные, вы получите сообщение об ошибке: Имя пользователя или пароль неверны.
Совет
Рассмотрите возможность использования Remote Credential Guard вместо Windows Hello для бизнеса для входа по протоколу RDP. Remote Credential Guard обеспечивает единый вход (SSO) в сеансы RDP с использованием проверки подлинности Kerberos и не требует развертывания сертификатов. Дополнительные сведения см. в разделе Remote Credential Guard.
Принцип работы
Windows создает и сохраняет криптографические ключи с помощью программного компонента, называемого поставщиком хранилища ключей (KSP):
- Программные ключи создаются и хранятся с помощью поставщика хранилища ключей программного обеспечения Майкрософт
- Ключи смарт-карта создаются и хранятся с помощью поставщика хранилища ключей смарт-карт Майкрософт
- Ключи, созданные и защищенные Windows Hello для бизнеса, создаются и хранятся с помощью поставщика хранилища ключей Microsoft Passport
Сертификат на смарт-карта начинается с создания асимметричной пары ключей с помощью microsoft Smart Card KSP. Windows запрашивает сертификат на основе пары ключей от предприятия, выдающего центр сертификации, который возвращает сертификат, хранящийся в личном хранилище сертификатов пользователя. Закрытый ключ остается на смарт-карта, а открытый ключ хранится вместе с сертификатом. В метаданных сертификата (и ключа) хранится поставщик хранилища ключей, используемый для создания ключа (помните, что сертификат содержит открытый ключ).
Та же концепция применяется к Windows Hello для бизнеса, за исключением того, что ключи создаются с помощью microsoft Passport KSP. Закрытый ключ пользователя остается защищенным модулем безопасности устройства (TPM) и жестом пользователя (ПИН-код/биометрические данные). API-интерфейсы сертификатов скрывают сложность. Когда приложение использует сертификат, API-интерфейсы сертификатов находят ключи с помощью поставщика хранилища сохраненных ключей. Поставщики хранилища ключей направляют API-интерфейсы сертификатов, к какому поставщику они используются для поиска закрытого ключа, связанного с сертификатом. Это то, как Windows знает, что у вас есть смарт-сертификат карта без смарт-карта вставки, и предлагает вам вставить смарт-карта.
Windows Hello для бизнеса имитирует интеллектуальный карта для совместимости приложений, а microsoft Passport KSP запрашивает у пользователя биометрический жест или ПИН-код.
Примечание.
Удаленный рабочий стол с биометрическими данными не работает с двойной регистрацией или сценариями, в которых пользователь предоставляет альтернативные учетные данные.
Требования
Ниже приведен список требований для включения входа по протоколу RDP с помощью Windows Hello для бизнеса:
- Инфраструктура PKI на основе AD CS или стороннего поставщика
- Windows Hello для бизнеса, развернутые на клиентах
- Если вы планируете поддерживать устройства, присоединенные к Microsoft Entra, контроллеры домена должны иметь сертификат, который служит корнем доверия для клиентов. Сертификат гарантирует, что клиенты не взаимодействуют с контроллерами домена изгоев
Если вы планируете развертывать сертификаты с помощью Microsoft Intune, ниже приведены дополнительные требования:
- Убедитесь, что у вас есть инфраструктура для поддержки развертывания SCEP или PKCS .
- Развертывание сертификата корневого ЦС и других промежуточных сертификатов центра сертификации для Microsoft Entra присоединенных устройств с помощью политики доверенных корневых сертификатов
Создание шаблона сертификата
Процесс создания шаблона сертификата применим к сценариям, в которых используется инфраструктура служб локальная служба Active Directory сертификатов (AD CS).
Сначала необходимо создать шаблон сертификата, а затем развернуть сертификаты на основе этого шаблона в контейнере Windows Hello для бизнеса.
Конфигурация шаблона сертификата зависит от того, развертываются ли сертификаты с помощью Microsoft Intune или политики регистрации Active Directory. Выберите вариант, который лучше всего соответствует вашим потребностям.
Войдите в центр сертификации, выдающий сертификат (ЦС) и откройте диспетчер сервера
Выберите Сервис > Центр сертификации. Откроется консоль управления Майкрософт (MMC) центра сертификации
В MMC разверните имя ЦС и щелкните правой кнопкой мыши управление шаблонами сертификатов>.
Откроется консоль "Шаблоны сертификатов". Все шаблоны сертификатов отображаются в области сведений
Щелкните правой кнопкой мыши шаблон Входа смарт-карты и выберите Дублировать шаблон.
Используйте следующую таблицу, чтобы настроить шаблон:
Имя вкладки Конфигурации Совместимость - Снимите флажок Показать результирующие изменения проверка
- Выберите Windows Server 2012 или Windows Server 2012 R2 в списке Центров сертификации.
- Выберите Windows Server 2012 или Windows Server 2012 R2 в списке получателей сертификации.
Общее - Укажите отображаемое имя шаблона, например проверку подлинности сертификата WHfB.
- Задайте для срока действия требуемое значение.
- Запишите имя шаблона для последующего использования, которое должно совпадать с отображаемым именем шаблона минус пробелы (WHfBCertificateAuthentication в этом примере)
Расширения Убедитесь, что расширение "Политики приложений " включает вход с помощью смарт-карты. Имя субъекта В запросе выберите Пункт Предоставить. Обработка запросов - Задайте для параметра Назначение значение Подпись и вход со смарт-картой и выберите Да при появлении запроса на изменение назначения сертификата.
- Выберите поле Продлить с тем же ключом проверка
- Выберите Запрос пользователя во время регистрации.
Заметка: При развертывании сертификатов с помощью профиля PKCS выберите параметр Разрешить экспорт закрытого ключа.Cryptography - Задайте для категории поставщиков значение Поставщик хранилища ключей.
- Задайте для значения имя алгоритма RSA.
- Задайте для минимального размера ключа значение 2048.
- Выберите Запросы должны использовать один из следующих поставщиков.
- Выбор поставщика хранилища ключей программного обеспечения Майкрософт
- Задайте для хэша запроса значение SHA256.
Безопасность Добавление субъекта безопасности, используемого для доступа к регистрации SCEP или PKCS. Нажмите кнопку ОК , чтобы завершить изменения и создать новый шаблон. Теперь новый шаблон должен появиться в списке шаблонов сертификатов.
Закрытие консоли "Шаблоны сертификатов"
Выдача шаблона сертификата
- В консоли центра сертификации щелкните правой кнопкой мыши Шаблоны сертификатов и выберите Новый > шаблон сертификата для выдачи.
- В списке шаблонов выберите ранее созданный шаблон (проверка подлинности сертификата WHFB) и нажмите кнопку ОК. Для репликации шаблона на все серверы и его доступности в этом списке может потребоваться некоторое время.
- После репликации шаблона в MMC щелкните правой кнопкой мыши в списке Центр сертификации и выберите Все задачи > Остановить службу. Снова щелкните правой кнопкой мыши имя ЦС и выберите Все задачи > Запустить службу.
Развертывание сертификатов
Процесс развертывания сертификатов зависит от того, используется ли Microsoft Intune или политика регистрации Active Directory. Выберите вариант, который лучше всего соответствует вашим потребностям.
В этом разделе описывается настройка политики SCEP в Intune. Для настройки политики PKCS можно выполнить аналогичные действия.
Перейдите в Центр администрирования Microsoft Intune
Выбор профилей > конфигурации устройств > Создание профиля
Выберите Платформа > Windows 10 и более поздних версий и Тип > профиля Шаблоны > СЕРТИФИКАТ SCEP.
Выберите Создать.
На панели Основные сведения укажите имя и, при необходимости, описание > Далее.
На панели Параметры конфигурации используйте следующую таблицу, чтобы настроить политику:
Параметр Конфигурации Тип сертификата Пользователь Формат имени субъекта CN={{UserPrincipalName}}
Примечание. Если существует несоответствие между суффиксом имени участника-пользователя и полным доменом Active Directory, используйтеCN={{OnPrem_Distinguished_Name}}
вместо него.Альтернативное имя субъекта В раскрывающемся списке выберите Имя участника-пользователя (UPN) со значением {{UserPrincipalName}}
Срок действия сертификата Настройка выбранного значения Поставщик хранилища ключей (KSP) Регистрация для Windows Hello для бизнеса, в противном случае сбой Использование ключей Цифровая подпись Размер ключа (биты) 2048 Для хэш-алгоритма SHA-2 Корневой сертификат Выберите +Корневой сертификат и выберите профиль доверенного сертификата, созданный ранее для сертификата корневого ЦС. Расширенное использование ключа - Имя:Вход с помощью смарт-карты
-
Идентификатор объекта:
1.3.6.1.4.1.311.20.2.2
- Предопределенные значения:не настроено
- Имя:проверка подлинности клиента
-
Идентификатор объекта:
1.3.6.1.5.5.7.3.2
- Стандартные значения:проверка подлинности клиента
Пороговое значение продления (%) Настройка выбранного значения URL-адреса сервера SCEP Укажите общедоступные конечные точки, настроенные во время развертывания инфраструктуры SCEP. Нажмите кнопку Далее
На панели Назначения назначьте политику группе безопасности, содержащей в качестве участников устройства или пользователей, которые вы хотите настроить, и нажмите кнопку Далее.
При необходимости на панели Правила применимости настройте ограничения выдачи и нажмите кнопку Далее.
На панели Проверка и создание просмотрите конфигурацию политики и выберите Создать.
Дополнительные сведения о настройке политик SCEP см. в разделе Настройка профилей сертификатов SCEP в Intune. Сведения о настройке политик PKCS см. в статье Настройка и использование сертификата PKCS с Intune.
Предостережение
Если вы развертываете сертификаты с помощью Intune и настраиваете Windows Hello для бизнеса с помощью групповой политики, устройства не смогут получить сертификат, занося код 0x82ab0011
ошибки в DeviceManagement-Enterprise-Diagnostic-Provider
журнал.
Чтобы избежать ошибки, настройте Windows Hello для бизнеса с помощью Intune, а не групповой политики.
Использование сторонних центров сертификации
Если вы используете PKI, не относящийся к Корпорации Майкрософт, шаблоны сертификатов, опубликованные в локальная служба Active Directory, могут быть недоступны. Инструкции по интеграции Intune/SCEP с развертываниями PKI, не являющихся microsoft, см. в статье Использование центров сертификации сторонних корпораций (ЦС) с SCEP в Microsoft Intune.
В качестве альтернативы использованию SCEP или если ни одно из ранее описанных решений не работает в вашей среде, вы можете вручную создать запросы на подпись сертификатов (CSR) для отправки в PKI. Чтобы упростить этот подход, можно использовать командлет PowerShell Generate-CertificateRequest .
Командлет Generate-CertificateRequest
создает .inf
файл для существующего ключа Windows Hello для бизнеса. Можно .inf
использовать для создания запроса сертификата вручную с помощью certreq.exe
. Командлет также создает .req
файл, который можно отправить в PKI для сертификата.
Убедитесь, что сертификат развернут
Чтобы убедиться, что сертификат правильно развернут в контейнере Windows Hello для бизнеса, используйте следующую команду:
certutil -store -user my
В выходных данных перечислены ключи и сертификаты, хранящиеся в пользовательском хранилище. Если сертификат, выданный из ЦС, развертывается в контейнере Windows Hello для бизнеса, в выходных данных отображается сертификат со значением Provider
Microsoft Passport Key Storage Provider
.
Пример:
C:\Users\amanda.brady>certutil -store -user my
my "Personal"
================ Certificate 0 ================
Serial Number: 110000001f4c4eccc46fc8f93a00000000001f
Issuer: CN=Contoso - Issuing CA, DC=CONTOSO, DC=COM
NotBefore: 12/8/2023 6:16 AM
NotAfter: 12/7/2024 6:16 AM
Subject: [email protected]
Non-root Certificate
Template: 1.3.6.1.4.1.311.21.8.2835349.12167323.7094945.1118853.678601.83.11484210.8005739
Cert Hash(sha1): 63c6ce5fc512933179d3c0a5e94ecba98092f93d
Key Container = S-1-12-1-../../login.windows.net/../[email protected]
Provider = Microsoft Passport Key Storage Provider
Private key is NOT exportable
Encryption test passed
Взаимодействие с пользователем
После получения сертификата пользователи могут подключиться к любым устройствам Windows в том же лесу Active Directory, что и учетная запись Active Directory пользователей, открыв подключение к удаленному рабочему столу (mstsc.exe
). При подключении к удаленному узлу им будет предложено использовать Windows Hello для бизнеса для разблокировки закрытого ключа сертификата.
устройство, присоединенное к Microsoft Entra
Пользователь может пройти проверку подлинности, используя любые доступные Windows Hello жесты разблокировки, включая биометрические данные.
Microsoft Entra устройство с гибридным присоединением
В запросе учетных данных поставщик учетных данных Windows Hello определяется как учетные данные устройства безопасности. Пользователь должен использовать поставщик учетных данных ПИН-кода для разблокировки.
Ниже приведено краткое видео, показывающее взаимодействие с пользователем с Microsoft Entra присоединенного устройства с использованием отпечатка пальца в качестве фактора разблокировки:
Примечание.
Пользователь должен быть авторизован для подключения к удаленному серверу по протоколу удаленного рабочего стола, например, будучи членом локальной группы "Пользователи удаленных рабочих столов" на удаленном узле.
Совместимость
Хотя пользователи ценят удобство биометрии, а администраторы ценят безопасность, у вас могут возникнуть проблемы совместимости с приложениями и сертификатами Windows Hello для бизнеса. В таких сценариях можно развернуть параметр политики, чтобы отменить изменения предыдущее поведение для пользователей, нуждающихся в нем.
Дополнительные сведения см. в статье Использование сертификатов Windows Hello для бизнеса в качестве сертификата смарт-карта.
Известные проблемы
Существует известная проблема при попытке выполнить проверку подлинности клиента TLS 1.3 с помощью сертификата Hello через RDP. Проверка подлинности завершается ошибкой : ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED
. Корпорация Майкрософт изучает возможные решения.