Поделиться через


Настройка потока принудительного сброса пароля в Azure Active Directory B2C

Это важно

Начиная с 1 мая 2025 г. Azure AD B2C больше не будет доступен для приобретения для новых клиентов. Дополнительные сведения см. в разделе "Вопросы и ответы".

Прежде чем начать, используйте селектор типа политики в верхней части этой страницы, чтобы выбрать тип политики, которую вы настроите. Azure Active Directory B2C предлагает два метода определения способа взаимодействия пользователей с вашими приложениями: с помощью предопределенных потоков пользователей или полностью настраиваемых пользовательских политик. Действия, которые необходимо выполнить, отличаются для каждого метода.

Обзор

Администратор может сбросить пароль пользователя , если пользователь забыл пароль. Или вы хотите заставить их сбросить пароль. В этой статье вы узнаете, как принудительно сбросить пароль в этих сценариях.

Когда администратор сбрасывает пароль пользователя через портал Azure, для атрибута forceChangePasswordNextSignIn задано trueзначение . В процессе входа и регистрации проверяется значение этого атрибута. После завершения входа, если атрибут задан true, пользователь должен сбросить пароль. Затем значение атрибута задается обратно false.

Принудительный сброс пароля

Поток сброса пароля применим к локальным учетным записям в Azure AD B2C, которые используют адрес электронной почты или имя пользователя с паролем для входа.

Предпосылки

Настройка пользовательского потока

Чтобы включить параметр принудительного сброса пароля в потоке регистрации или входа в систему:

  1. Войдите на портал Azure.
  2. Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
  3. В портале Azure найдите и выберите Azure AD B2C.
  4. Выберите потоки пользователей.
  5. Выберите поток регистрации и входа или поток входа пользователя (рекомендуемый тип Рекомендуется), который вы хотите настроить.
  6. С меню слева в разделе Параметры выберите Свойства.
  7. В разделе "Конфигурация пароля" выберите "Принудительный сброс пароля".
  8. Нажмите кнопку "Сохранить".

Тестирование потока пользователя

  1. Войдите на портал Azure в качестве администратора пользователя или администратора пароля. Дополнительные сведения о доступных ролях см. в разделе "Назначение ролей администратора" в идентификаторе Microsoft Entra.
  2. Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
  3. В портале Azure найдите и выберите Azure AD B2C.
  4. Выберите Пользователи. Найдите и выберите пользователя, который будет использоваться для проверки сброса пароля, а затем нажмите кнопку "Сбросить пароль".
  5. В портале Azure найдите и выберите Azure AD B2C.
  6. Выберите потоки пользователей.
  7. Выберите пользовательский поток для регистрации или входа (тип Рекомендуемый), который вы хотите протестировать.
  8. Выберите Запустить пользовательский сценарий.
  9. В разделе Приложение выберите зарегистрированное ранее веб-приложение с именем webapp1. В поле URL-адрес ответа должно содержаться значение https://jwt.ms.
  10. Выберите Запустить пользовательский сценарий.
  11. Войдите в учетную запись пользователя, для которой вы сбросили пароль.
  12. Теперь необходимо изменить пароль для пользователя. Измените пароль и нажмите кнопку "Продолжить". Маркер возвращается в https://jwt.ms и должен быть отображён вам.

Настройка настраиваемой политики

Получите пример политики принудительного сброса пароля на GitHub. В каждом файле замените строку yourtenant именем клиента Azure AD B2C. Например, если имя клиента B2C — contosob2c, все экземпляры yourtenant.onmicrosoft.com становятся contosob2c.onmicrosoft.com.

Отправка и проверка политики

  1. Войдите на портал Azure.
  2. Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
  3. Выберите все службы в левом верхнем углу портала Azure, а затем найдите и выберите Azure AD B2C.
  4. Выберите Identity Experience Framework.
  5. В настраиваемых политиках выберите " Отправить политику".
  6. Выберите файл TrustFrameworkExtensionsCustomForcePasswordReset.xml.
  7. Выберите Загрузить.
  8. Повторите шаги 6–8 для файла проверяющей стороны TrustFrameworkExtensionsCustomForcePasswordReset.xml.

Выполните политику

  1. Откройте политику, которую вы загрузили B2C_1A_TrustFrameworkExtensions_custom_ForcePasswordReset.
  2. Для приложения выберите приложение, зарегистрированное ранее. Чтобы увидеть маркер, должен отображаться https://jwt.ms.
  3. Выберите Запустить немедленно.
  4. Войдите в учетную запись пользователя, для которой вы сбросили пароль.
  5. Теперь необходимо изменить пароль для пользователя. Измените пароль и нажмите кнопку "Продолжить". Маркер возвращается в https://jwt.ms и должен быть отображён вам.

Принудительный сброс пароля при следующем входе

Чтобы принудительно сбросить пароль при следующем входе, обновите профиль пароля учетной записи с помощью операции MS Graph Обновление пользователя. Для этого необходимо назначить приложению Microsoft Graph роль администратора пользователя . Выполните действия, описанные в разделе "Предоставление роли администратора пользователя" , чтобы назначить приложению Microsoft Graph роль администратора пользователя.

Следующий пример обновляет атрибут forceChangePasswordNextSignIn профиля пароля на true, что заставляет пользователя сбросить пароль при следующем входе в систему.

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
    "passwordProfile": {
      "forceChangePasswordNextSignIn": true
    }
}

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

Осуществить принудительный сброс пароля через 90 дней

Администратор может задать срок действия пароля пользователя на 90 дней с помощью MS Graph. Через 90 дней значение атрибута forceChangePasswordNextSignIn автоматически задается true. Чтобы принудительно сбросить пароль через 90 дней, удалите DisablePasswordExpiration значение из атрибута политики пароля пользователя.

В следующем примере политика паролей обновляется до None, что приводит к обязательной смене пароля через 90 дней:

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
  "passwordPolicies": "None"
}

Если вы отключили сложность надежных паролей, обновите политику паролей, чтобы отключить DisableStrongPassword:

Замечание

После сброса пароля политика паролей будет изменена на отключение срока действия пароля.

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
  "passwordPolicies": "DisableStrongPassword"
}

После установки политики истечения срока действия пароля необходимо также настроить поток принудительного сброса пароля, как описано в этой статье.

Длительность срока действия пароля

По умолчанию пароль не истекает. Однако значение можно настроить с помощью командлета Update-MgDomain из модуля Microsoft Graph PowerShell. Эта команда обновляет тенант, чтобы срок действия паролей всех пользователей истекал через количество дней, которое вы настраиваете. Рассмотрим пример.

Import-Module Microsoft.Graph.Identity.DirectoryManagement

Connect-MgGraph  -Scopes 'Domain.ReadWrite.All'

$domainId = "contoso.com"
$params = @{
	passwordValidityPeriodInDays = 90
}

Update-MgDomain -DomainId $domainId -BodyParameter $params
  • passwordValidityPeriodInDays — это время в днях, когда пароль остается действительным перед его изменением.

Настройте самостоятельный сброс пароля.