Комплексная аутентификация и утверждения AD DS в AD FS

Windows Server 2012 улучшает проверку подлинности Kerberos, внедряя составную проверку подлинности. Составная проверка подлинности позволяет запрашивать службу предоставления билетов Kerberos (TGS) для включения двух удостоверений:

  • удостоверение пользователя
  • удостоверение устройства пользователя.

Windows выполняет комплексную проверку подлинности путем расширения гибкой проверки подлинности Kerberos Secure Tunneling (FAST) или защиты Kerberos.

Ad FS 2012 и более поздних версий позволяет использовать утверждения, выданные пользователем или устройством AD DS, которые находятся в билете проверки подлинности Kerberos. В предыдущих версиях AD FS обработчик утверждений может читать только идентификаторы пользователей и групп безопасности (SID) из Kerberos, но не смог прочитать какие-либо сведения о утверждениях, содержащиеся в билете Kerberos.

Вы можете включить более широкий контроль доступа для федеративных приложений с помощью домен Active Directory служб (AD DS), выданных пользователем и устройствами вместе с службы федерации Active Directory (AD FS) (AD FS).

Требования

  1. Компьютеры, обращающиеся к федеративнным приложениям, должны проходить проверку подлинности в AD FS с помощью интегрированной проверки подлинности Windows.

    • Встроенная проверка подлинности Windows доступна только при подключении к серверным серверам AD FS.
    • Компьютеры должны иметь доступ к серверным серверам AD FS для имени службы федерации
    • Серверы AD FS должны предлагать встроенную проверку подлинности Windows в качестве основного метода проверки подлинности в параметрах интрасети.
  2. Поддержка клиента Kerberos политики для комплексной проверки подлинности утверждений и защиты Kerberos должна применяться ко всем компьютерам, обращаюющимся к федеративных приложениям, защищенным составной проверкой подлинности. Это применимо в случае сценариев одного леса или между лесами.

  3. Домен, на которых имеются серверы AD FS, должны иметь поддержку KDC для комплексной проверки подлинности утверждений и настройки политики защиты Kerberos, примененной к контроллерам домена.

Действия по настройке AD FS в Windows Server 2012 R2

Чтобы настроить составную проверку подлинности и утверждения, выполните следующие действия.

Шаг 1. Включение поддержки KDC для утверждений, составной проверки подлинности и защиты Kerberos в политике контроллера домена по умолчанию

  1. В диспетчер сервера выберите "Сервис", "Управление групповыми политиками".
  2. Перейдите к политике контроллера домена по умолчанию, щелкните правой кнопкой мыши и выберите пункт "Изменить". Screenshot showing the Default Domain Policy page in the Group Policy Management dialog box.
  3. В редакторе управления групповыми политиками в разделе "Конфигурация компьютера" разверните политики, разверните Администратор istrative Templates, разверните узел "Система" и выберите KDC.
  4. В правой области дважды щелкните поддержку KDC для утверждений, составной проверки подлинности и защиты Kerberos. Screenshot of the Group Policy Management Editor showing the KDC support for claims, compound authentication, and Kerberos armoring setting highlighted.
  5. В новом диалоговом окне задайте поддержку KDC для утверждений включено.
  6. В разделе "Параметры" выберите "Поддерживаемые" в раскрывающемся меню и нажмите кнопку "Применить" и "ОК". Screenshot of the KDC support for claims, compound authentication and Kerberos armoring dialog box showing the Supported option selected.

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

  1. В групповой политике, применяемой к компьютерам, обращаюющимся к федеративным приложениям, в редакторе управления групповыми политиками в разделе "Конфигурация компьютера", разверните политики, разверните Администратор istrative Templates, разверните узел "Система" и выберите Kerberos.
  2. В правой области окна редактора управления групповыми политиками дважды щелкните службу поддержки клиентов Kerberos для утверждений, составной проверки подлинности и защиты Kerberos.
  3. В новом диалоговом окне задайте для клиента Kerberos значение "Включено" и нажмите кнопку "Применить" и "ОК". Screenshot of the KDC support for claims, compound authentication and Kerberos armoring dialog box showing the Enabled option selected.
  4. Закройте редактор управления групповыми политиками.

Шаг 3. Убедитесь, что серверы AD FS обновлены.

Необходимо убедиться, что на серверах AD FS установлены следующие обновления.

Обновить Description
КБ 2919355 Накопительное обновление системы безопасности(включает КБ 2919355,КБ 2932046,КБ 2934018,КБ 2937592,КБ 2938439)
КБ 2959977 Обновление для Server 2012 R2
Исправление 3052122 Это обновление добавляет поддержку утверждений составного идентификатора в службы федерации Active Directory (AD FS).

Шаг 4. Настройка основного поставщика проверки подлинности

  1. Задайте для основного поставщика проверки подлинности проверку подлинности Windows для параметров интрасети AD FS.

  2. В разделе "Управление AD FS" в разделе "Политики проверки подлинности" выберите первичную проверку подлинности и в разделе "Глобальный Параметры щелкните изменить".

  3. При изменении глобальной политики проверки подлинности в интрасети выберите проверку подлинности Windows.

  4. Нажмите кнопку "Применить" и "ОК".

    Screenshot of the Edit Global Authentication Policy dialog box showing the Windows Authentication option selected.

  5. С помощью PowerShell можно использовать командлет Set-AdfsGlobalAuthenticationPolicy .

Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider 'WindowsAuthentication'

Примечание.

В ферме на основе WID команда PowerShell должна выполняться на основном сервере AD FS. В ферме на основе SQL команда PowerShell может выполняться на любом сервере AD FS, который является членом фермы.

Шаг 5. Добавление описания утверждения в AD FS

  1. Добавьте в ферму следующее описание утверждения. Это описание утверждения отсутствует по умолчанию в AD FS 2012 R2 и должно быть добавлено вручную.

  2. В разделе "Управление AD FS" в разделе "Служба" щелкните правой кнопкой мыши описание утверждения и выберите "Добавить описание утверждения"

  3. Введите следующие сведения в описании утверждения

    • Отображаемое имя: "Группа устройств Windows"
    • Описание утверждения: '<https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup>' `
  4. Поместите проверка в обоих полях.

  5. Щелкните OK.

    Screenshot of the Add a Claim Description dialog box.

  6. С помощью PowerShell можно использовать командлет Add-AdfsClaimDescription .

    Add-AdfsClaimDescription -Name 'Windows device group' -ClaimType 'https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup' `
    -ShortName 'windowsdevicegroup' -IsAccepted $true -IsOffered $true -IsRequired $false -Notes 'The windows group SID of the device'
    

Примечание.

В ферме на основе WID команда PowerShell должна выполняться на основном сервере AD FS. В ферме на основе SQL команда PowerShell может выполняться на любом сервере AD FS, который является членом фермы.

Шаг 6. Включение бита комплексной проверки подлинности в атрибуте msDS-SupportedEncryptionTypes

  1. Включите составную проверку подлинности в атрибуте msDS-SupportedEncryptionTypes в учетной записи, назначенной для запуска службы AD FS с помощью командлета Set-ADServiceAccount PowerShell.

Примечание.

При изменении учетной записи службы необходимо вручную включить составную проверку подлинности, выполнив командлеты Set-ADUser -compoundIdentitySupported:$true командлеты Windows PowerShell.

Set-ADServiceAccount -Identity “ADFS Service Account” -CompoundIdentitySupported:$true
  1. Перезапустите службу AD FS.

Примечание.

После того как параметру CompoundIdentitySupported присвоено значение true, установка той же gMSA на новых серверах (2012R2/2016) завершается сбоем со следующей ошибкой — Install-ADServiceAccount: не удается установить учетную запись службы. Сообщение об ошибке: "Предоставленный контекст не соответствовал целевому объекту."

Решение: временно задайте значение CompoundIdentitySupported для $false. Этот шаг приводит к остановке выдачи утверждений WindowsDeviceGroup AD FS. Set-ADServiceAccount -Identity 'ADFS Service Account' -CompoundIdentitySupported:$false Установите gMSA на новом сервере, а затем включите CompoundIdentitySupported обратно в $True. Отключение CompoundIdentitySupported, а затем повторное развертывание не требует перезапуска службы AD FS.

Шаг 7. Обновление доверия поставщика утверждений AD FS для Active Directory

  1. Обновите доверие поставщика утверждений AD FS для Active Directory, чтобы включить следующее правило утверждения сквозной передачи для утверждения WindowsDeviceGroup.
  2. В службе управления AD FS щелкните "Доверие поставщиков утверждений" и в правой области щелкните Active Directory правой кнопкой мыши и выберите "Изменить правила утверждений".
  3. В окне "Изменить правила утверждений для активного директора" нажмите кнопку "Добавить правило".
  4. В мастере добавления правила утверждения преобразования выберите "Сквозь" или "Фильтровать входящее утверждение" и нажмите кнопку "Далее".
  5. Добавьте отображаемое имя и выберите группу устройств Windows в раскрывающемся списке типа входящего утверждения.
  6. Нажмите кнопку Готово. Нажмите кнопку "Применить" и "ОК". Screenshot of the AD FS, Edit Claim Rules for Active Directory, and Edit Rule - Windows Device Group dialog boxes with arrows and call outs showing the workflow described above.

Шаг 8. В проверяющей стороне, где ожидается утверждение WindowsDeviceGroup, добавьте аналогичное правило утверждения Pass-through или Transform.

  1. В службе управления AD FS щелкните "Доверие проверяющей стороны" и в правой области щелкните правой кнопкой мыши RP и выберите "Изменить правила утверждений".
  2. В правиле преобразования выдачи нажмите кнопку "Добавить правило".
  3. В мастере добавления правила утверждения преобразования выберите "Сквозь" или "Фильтровать входящее утверждение" и нажмите кнопку "Далее".
  4. Добавьте отображаемое имя и выберите группу устройств Windows в раскрывающемся списке типа входящего утверждения.
  5. Нажмите кнопку Готово. Нажмите кнопку "Применить" и "ОК". Screenshot of the AD FS, Edit Claim Rules for myclaims.fedhome.in, and Edit Rule - Windows Device Grp dialog boxes with arrows and call outs showing the workflow described above.

Действия по настройке AD FS в Windows Server 2016

Ниже приведены инструкции по настройке составной проверки подлинности в AD FS для Windows Server 2016.

Шаг 1. Включение поддержки KDC для утверждений, составной проверки подлинности и защиты Kerberos в политике контроллера домена по умолчанию

  1. В диспетчер сервера выберите "Сервис", "Управление групповыми политиками".
  2. Перейдите к политике контроллера домена по умолчанию, щелкните правой кнопкой мыши и выберите пункт "Изменить".
  3. В редакторе управления групповыми политиками в разделе "Конфигурация компьютера" разверните политики, разверните Администратор istrative Templates, разверните узел "Система" и выберите KDC.
  4. В правой области дважды щелкните поддержку KDC для утверждений, составной проверки подлинности и защиты Kerberos.
  5. В новом диалоговом окне задайте поддержку KDC для утверждений включено.
  6. В разделе "Параметры" выберите "Поддерживаемые" в раскрывающемся меню и нажмите кнопку "Применить" и "ОК".

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

  1. В групповой политике, применяемой к компьютерам, обращаюющимся к федеративным приложениям, в редакторе управления групповыми политиками в разделе "Конфигурация компьютера", разверните политики, разверните Администратор istrative Templates, разверните узел "Система" и выберите Kerberos.
  2. В правой области окна редактора управления групповыми политиками дважды щелкните службу поддержки клиентов Kerberos для утверждений, составной проверки подлинности и защиты Kerberos.
  3. В новом диалоговом окне задайте для клиента Kerberos значение "Включено" и нажмите кнопку "Применить" и "ОК".
  4. Закройте редактор управления групповыми политиками.

Шаг 3. Настройка основного поставщика проверки подлинности

  1. Задайте для основного поставщика проверки подлинности проверку подлинности Windows для параметров интрасети AD FS.
  2. В разделе "Управление AD FS" в разделе "Политики проверки подлинности" выберите первичную проверку подлинности и в разделе "Глобальный Параметры щелкните изменить".
  3. При изменении глобальной политики проверки подлинности в интрасети выберите проверку подлинности Windows.
  4. Нажмите кнопку "Применить" и "ОК".
  5. С помощью PowerShell можно использовать командлет Set-AdfsGlobalAuthenticationPolicy .
Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider 'WindowsAuthentication'

Примечание.

В ферме на основе WID команда PowerShell должна выполняться на основном сервере AD FS. В ферме на основе SQL команда PowerShell может выполняться на любом сервере AD FS, который является членом фермы.

Шаг 4. Включение бита комплексной проверки подлинности в атрибуте msDS-SupportedEncryptionTypes

  1. Включите составную проверку подлинности в атрибуте msDS-SupportedEncryptionTypes в учетной записи, назначенной для запуска службы AD FS с помощью командлета Set-ADServiceAccount PowerShell.

Примечание.

При изменении учетной записи службы необходимо вручную включить составную проверку подлинности, выполнив командлеты Set-ADUser -compoundIdentitySupported:$true командлеты Windows PowerShell.

Set-ADServiceAccount -Identity “ADFS Service Account” -CompoundIdentitySupported:$true
  1. Перезапустите службу AD FS.

Примечание.

После того как параметру CompoundIdentitySupported присвоено значение true, установка той же gMSA на новых серверах (2012R2/2016) завершается сбоем со следующей ошибкой — Install-ADServiceAccount: не удается установить учетную запись службы. Сообщение об ошибке: "Предоставленный контекст не соответствовал целевому объекту."

Решение: временно задайте значение CompoundIdentitySupported для $false. Этот шаг приводит к остановке выдачи утверждений WindowsDeviceGroup AD FS. Set-ADServiceAccount -Identity 'ADFS Service Account' -CompoundIdentitySupported:$false Установите gMSA на новом сервере, а затем включите CompoundIdentitySupported обратно в $True. Отключение CompoundIdentitySupported, а затем повторное развертывание не требует перезапуска службы AD FS.

Шаг 5. Обновление доверия поставщика утверждений AD FS для Active Directory

  1. Обновите доверие поставщика утверждений AD FS для Active Directory, чтобы включить следующее правило утверждения сквозной передачи для утверждения WindowsDeviceGroup.
  2. В службе управления AD FS щелкните "Доверие поставщиков утверждений" и в правой области щелкните Active Directory правой кнопкой мыши и выберите "Изменить правила утверждений".
  3. В окне "Изменить правила утверждений для активного директора" нажмите кнопку "Добавить правило".
  4. В мастере добавления правила утверждения преобразования выберите "Сквозь" или "Фильтровать входящее утверждение" и нажмите кнопку "Далее".
  5. Добавьте отображаемое имя и выберите группу устройств Windows в раскрывающемся списке типа входящего утверждения.
  6. Нажмите кнопку Готово. Нажмите кнопку "Применить" и "ОК".

Шаг 6. В проверяющей стороне, где ожидается утверждение WindowsDeviceGroup, добавьте аналогичное правило утверждения Pass-through или Transform.

  1. В службе управления AD FS щелкните "Доверие проверяющей стороны" и в правой области щелкните правой кнопкой мыши RP и выберите "Изменить правила утверждений".
  2. В правиле преобразования выдачи нажмите кнопку "Добавить правило".
  3. В мастере добавления правила утверждения преобразования выберите "Сквозь" или "Фильтровать входящее утверждение" и нажмите кнопку "Далее".
  4. Добавьте отображаемое имя и выберите группу устройств Windows в раскрывающемся списке типа входящего утверждения.
  5. Нажмите кнопку Готово. Нажмите кнопку "Применить" и "ОК".

Проверка

Чтобы проверить выпуск утверждений WindowsDeviceGroup, создайте тестовое приложение с поддержкой утверждений с помощью .NET 4.6. С пакетом SDK WIF 4.0. Настройте приложение как проверяющую сторону в AD FS и обновите его с помощью правила утверждения, как указано в шагах выше. При проверке подлинности в приложении с помощью поставщика встроенной проверки подлинности Windows AD FS создаются следующие утверждения. Validation

Утверждения для компьютера или устройства теперь могут использоваться для более широких элементов управления доступом.

Например, следующий параметр AdditionalAuthenticationRules сообщает AD FS для вызова MFA, если — пользователь проверки подлинности не входит в группу безопасности "-1-5-21-2134745077-121275016-30505550530490-11 17" И компьютер (где пользователь выполняет проверку подлинности) не входит в группу безопасности "S-1-5-21-2134745077-1211275016-3050530490-1115 (WindowsDeviceGroup)"

Однако если выполняются какие-либо из указанных выше условий, не вызывайте MFA.

'NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup", Value =~ "S-1-5-21-2134745077-1211275016-3050530490-1115"])
&& NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value =~ "S-1-5-21-2134745077-1211275016-3050530490-1117"])
=> issue(Type = "https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod", Value = "https://schemas.microsoft.com/claims/multipleauthn");'