Поддержка параметра prompt=login в службах федерации Active Directory (AD FS)Active Directory Federation Services prompt=login parameter support

В следующем документе описывается собственная поддержка параметра Prompt = Login, доступного в AD FS.The following document describes the native support for the prompt=login parameter that is available in AD FS.

Что такое Prompt = имя входа?What is prompt=login?

Когда приложения должны запрашивать новую проверку подлинности из Azure AD, а это означает, что им требуется Azure AD для повторной проверки подлинности пользователя, даже если пользователь уже прошел проверку подлинности, он может отправить prompt=login параметр в Azure AD как часть запроса на проверку подлинности.When applications need to request fresh authentication from Azure AD, meaning that they need Azure AD to re-authenticate the user even if the user has already been authenticated, they can send the prompt=login parameter to Azure AD as part of the authentication request.

Если этот запрос предназначен для федеративного пользователя, Azure AD необходимо сообщить IdP, например AD FS, что запрос предназначен для новой проверки подлинности.When this request is for a federated user, Azure AD needs to inform the IdP, like AD FS, that the request is for fresh authentication.

По умолчанию Azure AD преобразуется prompt=login в wfresh=0 и wauth=https://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password при отправке запросов на проверку подлинности в федеративный IDP.By default, Azure AD translates prompt=login to wfresh=0 and wauth=https://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password when sending this type of authentication requests to the federated IdP.

Эти параметры означают следующее:These parameters mean:

  • wfresh=0: выполнять новую проверку подлинностиwfresh=0: do fresh authentication
  • wauth=https://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password: использовать имя пользователя и пароль для нового запроса проверки подлинностиwauth=https://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password: use username/password for the fresh authentication request

Это может вызвать проблемы с корпоративными интрасетями и сценариями многофакторной проверки подлинности, в которых требуется тип проверки подлинности, отличный от имени пользователя и пароля, запрошенных wauth параметром.This can cause problems with corporate intranet and multi-factor authentication scenarios in which an authentication type other than username and password, as requested by the wauth parameter, is desired.

AD FS в Windows Server 2012 R2 с накопительным пакетом обновления за Июль 2016 представил встроенную поддержку для prompt=login параметра.AD FS in Windows Server 2012 R2 with the July 2016 update rollup introduced native support for the prompt=login parameter. Это означает, что теперь Azure AD может отправить этот параметр "как есть" в AD FS службу как часть запросов проверки подлинности Azure AD и Office 365.This means that now Azure AD can send this parameter as-is to AD FS service as part of Azure AD and Office 365 authentication requests.

AD FS версии, поддерживающие Prompt = имя входаAD FS versions that support prompt=login

Ниже приведен список версий AD FS, которые поддерживают prompt=login параметр.The following is a list of AD FS versions that support the prompt=login parameter.

  • AD FS в Windows Server 2012 R2 с накопительным пакетом обновления за Июль 2016AD FS in Windows Server 2012 R2 with the July 2016 update rollup
  • AD FS в Windows Server 2016AD FS in Windows Server 2016

Настройка федеративного домена для отправки запроса = вход в AD FSHow to configure a federated domain to send prompt=login to AD FS

Для настройки параметра используйте модуль Azure AD PowerShell.Use the Azure AD PowerShell module to configure the setting.

Примечание

prompt=loginВозможность (включенная PromptLoginBehavior свойством) в настоящее время доступна только в модуле Azure AD PowerShell версии 1,0, в котором командлеты имеют имена, включающие "MSOL", например Set-MsolDomainFederationSettings.The prompt=login capability (enabled by the PromptLoginBehavior property) is currently available only in the version 1.0 of the Azure AD Powershell module, in which the cmdlets have names that include “Msol”, such as Set-MsolDomainFederationSettings. В настоящее время он недоступен через версию 2,0 модуля Azure AD PowerShell, у командлетов которых есть такие имена, как Set-AzureAD * .It is not currently available via ‘version 2.0' of the Azure AD PowerShell module, whose cmdlets have names like “Set-AzureAD*”.

  1. Сначала получите текущие значения PreferredAuthenticationProtocol , SupportsMfa и PromptLoginBehavior для федеративного домена, выполнив следующую команду PowerShell:First obtain the current values of PreferredAuthenticationProtocol, SupportsMfa, and PromptLoginBehavior for the federated domain by running the following PowerShell command:
    Get-MsolDomainFederationSettings -DomainName <your_domain_name> | Format-List *

Примечание

Выходные данные по Get-MsolDomainFederationSettings умолчанию не отображают определенные свойства в консоли.The output of Get-MsolDomainFederationSettings by default does not display certain properties in the console. Чтобы просмотреть все свойства, необходимо передать | его выходные данные, чтобы Format-List * принудительно вывести все свойства объекта.To view all the properties you should pipe (|) its output to Format-List * to force the output of all the properties of the object.

Get-MsolDomainFederationSettings

Примечание

Если значение свойства PromptLoginBehavior является пустым ( $null ), TranslateToFreshPasswordAuth используется поведение.If the value of the property PromptLoginBehavior is empty ($null) the behavior of TranslateToFreshPasswordAuth is used.

  1. Настройте нужное значение PromptLoginBehavior , выполнив следующую команду:Configure the desired value of PromptLoginBehavior by running the following command:
    Set-MsolDomainFederationSettings –DomainName <your_domain_name> -PreferredAuthenticationProtocol <current_value_from_step1> -SupportsMfa <current_value_from_step1> -PromptLoginBehavior <TranslateToFreshPasswordAuth|NativeSupport|Disabled>

Ниже приведены возможные значения PromptLoginBehavior параметра и их значение.Following are the possible values of PromptLoginBehavior parameter and their meaning:

  • Транслатетофрешпассвордаус: обозначает поведение Azure AD по умолчанию при преобразовании prompt=login в wauth=https://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password и wfresh=0 .TranslateToFreshPasswordAuth: means the default Azure AD behavior of translating prompt=login to wauth=https://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password and wfresh=0.
  • Нативесуппорт: означает, что prompt=login параметр будет отправлен в виде AD FS.NativeSupport: means that the prompt=login parameter will be sent as is to AD FS. Это рекомендуемое значение, если AD FS находится в Windows Server 2012 R2 с накопительным пакетом обновления за Июль 2016 или более поздней версии.This is the recommended value if AD FS is in Windows Server 2012 R2 with the July 2016 update rollup or higher.
  • Отключено. означает, что wfresh=0 отправляется только в AD FS.Disabled: means that only wfresh=0 is sent to AD FS.