Konfigurace požadavků na složitost hesel v Azure Active Directory B2C
Než začnete, pomocí selektoru Zvolit typ zásady zvolte typ zásady, kterou nastavujete. Azure Active Directory B2C nabízí dvě metody pro definování způsobu interakce uživatelů s vašimi aplikacemi: prostřednictvím předdefinovaných toků uživatelů nebo prostřednictvím plně konfigurovatelných vlastních zásad. Kroky vyžadované v tomto článku se pro každou metodu liší.
Azure Active Directory B2C (Azure AD B2C) podporuje změnu složitých požadavků na hesla poskytnutá koncovým uživatelem při vytváření účtu. Azure AD B2C ve výchozím nastavení používá silná hesla. Azure AD B2C také podporuje možnosti konfigurace pro řízení složitosti hesel, která můžou zákazníci používat.
Předpoklady
- Vytvořte tok uživatele, aby se uživatelé mohli zaregistrovat a přihlásit k vaší aplikaci.
- Zaregistrujte webovou aplikaci.
Vynucení pravidla hesla
Při registraci nebo resetování hesla musí koncový uživatel zadat heslo, které splňuje pravidla složitosti. Pravidla složitosti hesel se vynucují na tok uživatele. Jeden tok uživatele může během registrace vyžadovat čtyřmístný pin kód, zatímco jiný tok uživatele vyžaduje během registrace osmimístný řetězec. Můžete například použít tok uživatele s různou složitostí hesla pro dospělé než pro děti.
Složitost hesla se při přihlašování nikdy nevynucuje. Uživatelé se při přihlášení nikdy nezobrazí výzva ke změně hesla, protože nesplňuje aktuální požadavek na složitost.
Složitost hesla můžete nakonfigurovat v následujících typech toků uživatelů:
- Tok registrace nebo přihlášení uživatele
- Tok uživatele resetování hesla
Pokud používáte vlastní zásady, můžete nakonfigurovat složitost hesla ve vlastních zásadách.
Konfigurace složitosti hesla
- Přihlaste se k portálu Azure.
- Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
- Na webu Azure Portal vyhledejte a vyberte Azure AD B2C.
- Vyberte Toky uživatele.
- Vyberte tok uživatele a klikněte na Vlastnosti.
- V části Složitost hesla změňte složitost hesla pro tento tok uživatele na Jednoduchý, Silný nebo Vlastní.
Srovnávací graf
Složitost | Popis |
---|---|
Stručně | Heslo, které je alespoň 8 až 64 znaků. |
Silné | Heslo, které je alespoň 8 až 64 znaků. Vyžaduje 3 z 4 malých písmen, velkých písmen, čísel nebo symbolů. |
Vlastní | Tato možnost poskytuje největší kontrolu nad pravidly složitosti hesel. Umožňuje konfigurovat vlastní délku. Umožňuje také přijímat hesla jen pro čísla (špendlíky). |
Vlastní možnosti
Znaková sada
Umožňuje přijímat pouze číslice (špendlíky) nebo úplnou znakové sady.
- Čísla umožňují při zadávání hesla jenom číslice (0–9).
- Všechny umožňují libovolné písmeno, číslo nebo symbol.
Délka
Umožňuje řídit požadavky na délku hesla.
- Minimální délka musí být minimálně 4.
- Maximální délka musí být větší nebo rovna minimální délce a maximálně může mít 256 znaků.
Třídy znaků
Umožňuje řídit různé typy znaků používané v hesle.
2 z 4: Malá písmena, Velká písmena, Číslo (0-9), Symbol zajišťuje, že heslo obsahuje aspoň dva typy znaků. Například číslo a malá písmena.
3 z 4: Malá písmena, Velká písmena, Číslo (0-9), Symbol zajišťuje, že heslo obsahuje aspoň tři typy znaků. Například číslo, malá písmena a velká písmena.
4 z 4: Malá písmena, Velká písmena, Číslo (0-9), Symbol zajišťuje, že heslo obsahuje všechny typy znaků.
Poznámka:
Vyžadování 4 ze 4 může vést k frustraci koncových uživatelů. Některé studie ukázaly, že tento požadavek nezlepší entropii hesel. Viz pokyny pro hesla NIST
Ověření predikátu hesla
Pokud chcete nakonfigurovat složitost hesla, přepište newPassword
typy deklarací reenterPassword
identity odkazem na ověřování predikátu. PredikateValidations element seskupí sadu predikátů, které vytvoří ověření vstupu uživatele, které lze použít na typ deklarace identity. Otevřete soubor s příponami zásad. Například, SocialAndLocalAccounts/
TrustFrameworkExtensions.xml
.
Vyhledejte element BuildingBlocks . Pokud prvek neexistuje, přidejte ho.
Vyhledejte element ClaimsSchema . Pokud prvek neexistuje, přidejte ho.
Přidejte a
newPassword
reenterPassword
deklarací identity do elementu ClaimsSchema .<!-- <BuildingBlocks> <ClaimsSchema> --> <ClaimType Id="newPassword"> <PredicateValidationReference Id="CustomPassword" /> </ClaimType> <ClaimType Id="reenterPassword"> <PredicateValidationReference Id="CustomPassword" /> </ClaimType> <!-- </ClaimsSchema> </BuildingBlocks>-->
Predikáty definují základní ověření, které kontroluje hodnotu typu deklarace identity a vrací hodnotu true nebo false. Ověření se provádí pomocí zadaného prvku metody a sady parametrů relevantních pro metodu. Přidejte následující predikáty do elementu BuildingBlocks bezprostředně za uzavření elementu
</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>-->
Přidejte následující ověření predikátu do elementu BuildingBlocks bezprostředně za uzavření elementu
</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>-->
Zakázání silného hesla
Následující technické profily jsou technické profily služby Active Directory, které čtou a zapisují data do Microsoft Entra ID. Přepište tyto technické profily v souboru s příponou. Slouží PersistedClaims
k zakázání zásad silného hesla. Vyhledejte element ClaimsProviders . Následujícím způsobem přidejte následující zprostředkovatele deklarací identity:
<!--
<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>-->
Pokud používáte zásady přihlašování založené na uživatelském jménu, aktualizujte AAD-UserWriteUsingLogonEmail
profily a LocalAccountWritePasswordUsingObjectId
AAD-UserWritePasswordUsingObjectId
technické profily pomocí zásad DisableStrongPassword.
Uložte soubor zásad.
Testování zásad
Nahrání souborů
- Přihlaste se k portálu Azure.
- Pokud máte přístup k více tenantům, v horní nabídce vyberte ikonu Nastavení a v nabídce Adresáře a předplatná přepněte do svého tenanta Azure AD B2C.
- V levém horním rohu webu Azure Portal zvolte Všechny služby a pak vyhledejte a vyberte Azure AD B2C.
- Vyberte Architekturu prostředí identit.
- Na stránce Vlastní zásady vyberte Nahrát zásadu.
- Vyberte Přepsat zásadu, pokud existuje, a pak vyhledejte a vyberte soubor TrustFrameworkExtensions.xml .
- Vyberte Odeslat.
Spuštění zásad
- Otevřete zásady registrace nebo přihlášení, jako je B2C_1A_signup_signin.
- V případě aplikace vyberte aplikaci, kterou jste předtím zaregistrovali. Aby se zobrazil token, měla by se zobrazit
https://jwt.ms
adresa URL odpovědi . - Vyberte Spustit.
- Vyberte Zaregistrovat se, zadejte e-mailovou adresu a zadejte nové heslo. Pokyny jsou uvedeny v omezeních hesel. Dokončete zadávání informací o uživateli a pak vyberte Vytvořit. Měl by se zobrazit obsah vráceného tokenu.
Další kroky
- Zjistěte, jak nakonfigurovat změnu hesla v Azure Active Directory B2C.
- Přečtěte si další informace o prvcích predikátů a predikátůValidation v referenčních informacích IEF.