Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Прежде чем начать, используйте селектор типа политики в верхней части этой страницы, чтобы выбрать тип политики, которую вы настроите. Azure Active Directory B2C предлагает два метода определения способа взаимодействия пользователей с вашими приложениями: с помощью предопределенных потоков пользователей или полностью настраиваемых пользовательских политик. Действия, которые необходимо выполнить, отличаются для каждого метода.
Azure Active Directory B2C (Azure AD B2C) поддерживает изменение требований к сложности паролей, предоставленных конечным пользователем при создании учетной записи. По умолчанию Azure AD B2C использует надежные пароли. Azure AD B2C также поддерживает параметры конфигурации для управления сложностью паролей, которые клиенты могут использовать.
Предпосылки
- Создайте поток пользователя, чтобы пользователи могли зарегистрироваться и входить в ваше приложение.
- Зарегистрируйте веб-приложение.
- Выполните действия, описанные в статье "Начало работы с настраиваемыми политиками в Active Directory B2C". В этом руководстве описано, как обновить пользовательские файлы политики для использования конфигурации клиента Azure AD B2C.
- Зарегистрируйте веб-приложение.
Принудительное применение правил паролей
Во время регистрации или сброса пароля конечный пользователь должен указать пароль, соответствующий правилам сложности. Правила сложности паролей применяются для каждого потока пользователя. Для одного потока пользователя может потребоваться четырехзначный пин-код во время регистрации, а для другого потока пользователя требуется восемь символьных строк во время регистрации. Например, можно использовать поток пользователя с другой сложностью пароля для взрослых, чем для детей.
Сложность пароля никогда не применяется во время входа. Пользователей никогда не просят изменить свой пароль при входе в систему, так как он не соответствует текущим требованиям сложности.
Сложность пароля можно настроить в следующих типах потоков пользователей:
- Поток регистрации или входа в систему
- Пользовательский поток сброса пароля
Если вы используете пользовательские политики, можно настроить сложность паролей в пользовательской политике.
Настройка сложности паролей
- Войдите на портал Azure.
- Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
- В портале Azure найдите и выберите Azure AD B2C.
- Выберите потоки пользователей.
- Выберите поток пользователя и выберите "Свойства".
- В разделе "Сложность пароля" измените сложность пароля для этого потока пользователя на Simple, Strong или Custom.
Диаграмма сравнения
Сложность | Описание |
---|---|
Простой | Пароль длиной от 8 до 64 символов. |
Сильный | Пароль, который не менее 8 до 64 символов. Для этого требуется 3 из 4 категорий: строчные буквы, прописные буквы, цифры или символы. |
Обычай | Этот параметр обеспечивает наиболее контроль над правилами сложности паролей. Она позволяет настроить настраиваемую длину. Он также позволяет принимать пароли только для чисел (пин-коды). |
Настраиваемые параметры
Набор символов
Позволяет принимать только цифры (пин-коды) или полный набор символов.
- Только цифры позволяет вводить только цифры (0–9) при создании пароля.
- Все разрешает любые буквы, цифры или символы.
Длина
Позволяет управлять требованиями к длине пароля.
- Минимальная длина должна быть не менее 4.
- Максимальная длина должна быть больше или равна минимальной длине, и не более 256 символов.
Классы символов
Позволяет управлять различными типами символов, используемыми в пароле.
2 из 4: нижний регистр, верхний регистр, число (0-9), символ гарантирует, что пароль содержит по крайней мере два типа символов. Например, число и строчная буква.
3 из 4: строчный символ, верхний регистр, число (0–9), символ гарантирует, что пароль содержит не менее трех типов символов. Например, число, буква в нижнем регистре и буква в верхнем регистре.
4 из 4: нижний регистр, верхний регистр, число (0-9), символ гарантирует, что пароль содержит все типы символов.
Примечание.
Требование 4 из 4 может привести к разочарованию конечных пользователей. Некоторые исследования показали, что это требование не улучшает энтропию паролей. См . рекомендации по использованию паролей NIST
Проверка предиката пароля
Чтобы настроить сложность пароля, переопределите newPassword
reenterPassword
типы утверждений с помощью ссылки на проверки предиката. Элемент PredicateValidations группирует набор предикатов для формирования проверки ввода пользователя, которая может применяться к типу утверждения. Откройте файл расширений вашей политики. Например: SocialAndLocalAccounts/
TrustFrameworkExtensions.xml
.
Найдите элемент BuildingBlocks . Если элемент не существует, добавьте его.
Найдите элемент ClaimsSchema . Если элемент не существует, добавьте его.
Добавьте утверждения
newPassword
иreenterPassword
в элемент ClaimsSchema.<!-- <BuildingBlocks> <ClaimsSchema> --> <ClaimType Id="newPassword"> <PredicateValidationReference Id="CustomPassword" /> </ClaimType> <ClaimType Id="reenterPassword"> <PredicateValidationReference Id="CustomPassword" /> </ClaimType> <!-- </ClaimsSchema> </BuildingBlocks>-->
Предикаты определяют базовую валидацию, чтобы проверить значение типа утверждения и вернуть true или false. Проверка выполняется с помощью указанного элемента метода и набора параметров, соответствующих методу. Добавьте следующие предикаты в элемент BuildingBlocks сразу после закрытия
</ClaimsSchema>
элемента:<!-- <BuildingBlocks>--> <Predicates> <Predicate Id="LengthRange" Method="IsLengthRange"> <UserHelpText>The password must be between 6 and 64 characters.</UserHelpText> <Parameters> <Parameter Id="Minimum">6</Parameter> <Parameter Id="Maximum">64</Parameter> </Parameters> </Predicate> <Predicate Id="Lowercase" Method="IncludesCharacters"> <UserHelpText>a lowercase letter</UserHelpText> <Parameters> <Parameter Id="CharacterSet">a-z</Parameter> </Parameters> </Predicate> <Predicate Id="Uppercase" Method="IncludesCharacters"> <UserHelpText>an uppercase letter</UserHelpText> <Parameters> <Parameter Id="CharacterSet">A-Z</Parameter> </Parameters> </Predicate> <Predicate Id="Number" Method="IncludesCharacters"> <UserHelpText>a digit</UserHelpText> <Parameters> <Parameter Id="CharacterSet">0-9</Parameter> </Parameters> </Predicate> <Predicate Id="Symbol" Method="IncludesCharacters"> <UserHelpText>a symbol</UserHelpText> <Parameters> <Parameter Id="CharacterSet">@#$%^&*\-_+=[]{}|\\:',.?/`~"();!</Parameter> </Parameters> </Predicate> </Predicates> <!-- </BuildingBlocks>-->
Добавьте следующие проверки предиката в элемент BuildingBlocks сразу после закрытия
</Predicates>
элемента:<!-- <BuildingBlocks>--> <PredicateValidations> <PredicateValidation Id="CustomPassword"> <PredicateGroups> <PredicateGroup Id="LengthGroup"> <PredicateReferences MatchAtLeast="1"> <PredicateReference Id="LengthRange" /> </PredicateReferences> </PredicateGroup> <PredicateGroup Id="CharacterClasses"> <UserHelpText>The password must have at least 3 of the following:</UserHelpText> <PredicateReferences MatchAtLeast="3"> <PredicateReference Id="Lowercase" /> <PredicateReference Id="Uppercase" /> <PredicateReference Id="Number" /> <PredicateReference Id="Symbol" /> </PredicateReferences> </PredicateGroup> </PredicateGroups> </PredicateValidation> </PredicateValidations> <!-- </BuildingBlocks>-->
Отключение надежного пароля
Ниже приведены технические профили Active Directory, которые считывают и записывают данные в идентификатор Microsoft Entra. Переопределите эти технические профили в файле расширения. Используется PersistedClaims
для отключения политики надежных паролей. Найдите элемент ClaimsProviders . Добавьте следующие поставщики утверждений следующим образом:
<!--
<ClaimsProviders>-->
<ClaimsProvider>
<DisplayName>Azure Active Directory</DisplayName>
<TechnicalProfiles>
<TechnicalProfile Id="AAD-UserWriteUsingLogonEmail">
<PersistedClaims>
<PersistedClaim ClaimTypeReferenceId="passwordPolicies" DefaultValue="DisablePasswordExpiration, DisableStrongPassword"/>
</PersistedClaims>
</TechnicalProfile>
<TechnicalProfile Id="AAD-UserWritePasswordUsingObjectId">
<PersistedClaims>
<PersistedClaim ClaimTypeReferenceId="passwordPolicies" DefaultValue="DisablePasswordExpiration, DisableStrongPassword"/>
</PersistedClaims>
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
<!--
</ClaimsProviders>-->
Если вы используете политику входа на основе имени пользователя, обновите технические профили AAD-UserWriteUsingLogonEmail
, AAD-UserWritePasswordUsingObjectId
и LocalAccountWritePasswordUsingObjectId
с помощью политики DisableStrongPassword.
Сохраните файл политики.
Тестирование политики
Отправка файлов
- Войдите на портал Azure.
- Если у вас есть доступ к нескольким клиентам, щелкните значок Настройки в верхнем меню, чтобы переключиться на клиент Azure AD B2C из меню Каталоги и подписки.
- Выберите все службы в левом верхнем углу портала Azure, а затем найдите и выберите Azure AD B2C.
- Выберите Identity Experience Framework.
- На странице "Настраиваемые политики" выберите " Отправить политику".
- Выберите перезаписать политику, если она существует, а затем найдите и выберите файл TrustFrameworkExtensions.xml .
- Выберите Загрузить.
Выполните политику
- Откройте политику регистрации или входа, например B2C_1A_signup_signin.
- Для приложения выберите приложение, которое вы ранее зарегистрировали. Чтобы увидеть маркер, должен отображаться
https://jwt.ms
. - Выберите Запустить немедленно.
- Выберите "Зарегистрироваться", введите адрес электронной почты и введите новый пароль. Руководство по ограничениям паролей представлено. Завершите ввод сведений о пользователе и нажмите кнопку "Создать". Вы увидите содержимое возвращенного маркера.
Связанный контент
- Узнайте, как настроить изменение пароля в Azure Active Directory B2C.
- Дополнительные сведения о элементах Predicates и PredicateValidations см. в справочнике по IEF.