Udostępnij za pośrednictwem


Konfigurowanie wymagań dotyczących złożoności haseł w usłudze Azure Active Directory B2C

Ważne

Od 1 maja 2025 r. usługa Azure AD B2C nie będzie już dostępna do zakupu dla nowych klientów. Dowiedz się więcej w naszych często zadawanych pytaniach.

Przed rozpoczęciem użyj selektora Wybierz typ zasad w górnej części tej strony, aby wybrać typ konfigurowanych zasad. Usługa Azure Active Directory B2C oferuje dwie metody definiowania sposobu interakcji użytkowników z aplikacjami: za pomocą wstępnie zdefiniowanych przepływów użytkowników lub w pełni konfigurowalnych zasad niestandardowych. Kroki wymagane w tym artykule są różne dla każdej metody.

Usługa Azure Active Directory B2C (Azure AD B2C) obsługuje zmianę wymagań dotyczących złożoności haseł dostarczonych przez użytkownika końcowego podczas tworzenia konta. Domyślnie usługa Azure AD B2C używa silnych haseł. Usługa Azure AD B2C obsługuje również opcje konfiguracji w celu kontrolowania złożoności haseł, których klienci mogą używać.

Wymagania wstępne

Wymuszanie reguł haseł

Podczas rejestracji lub resetowania hasła użytkownik końcowy musi podać hasło spełniające reguły złożoności. Reguły złożoności hasła są wymuszane dla każdej operacji użytkownika. Istnieje możliwość, że jeden przepływ użytkownika wymaga czterocyfrowego numeru PIN podczas rejestracji, podczas gdy inny przepływ użytkownika wymaga ośmiu znaków ciągu podczas rejestracji. Na przykład możesz użyć przepływu użytkownika z inną złożonością hasła dla dorosłych niż dla dzieci.

Złożoność hasła nigdy nie jest wymuszana podczas logowania. Użytkownicy nigdy nie są monitowani podczas logowania, aby zmienić hasło, ponieważ nie spełnia ono bieżącego wymagania dotyczącego złożoności.

Złożoność hasła można skonfigurować w następujących typach przepływów użytkownika:

  • Przepływ rejestracji lub logowania użytkownika
  • Przepływ resetowania hasła dla użytkownika

Jeśli używasz zasad niestandardowych, możesz skonfigurować złożoność hasła w zasadach niestandardowych.

Konfigurowanie złożoności hasła

  1. Zaloguj się do witryny Azure Portal.
  2. Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się na dzierżawę Azure AD B2C z menu Katalogi + subskrypcje.
  3. W witrynie Azure Portal wyszukaj i wybierz pozycję Azure AD B2C.
  4. Wybierz pozycję Przepływy użytkownika.
  5. Wybierz ścieżkę użytkownika i wybierz pozycję Właściwości.
  6. W obszarze Złożoność hasła zmień złożoność hasła dla tego przepływu użytkownika na Proste, Silne lub Niestandardowe.

Porównanie

Złożoność Opis
Uproszczony Hasło, które ma od 8 do 64 znaków.
Silny Hasło, które ma od 8 do 64 znaków. Wymaga 3 spośród 4 elementów: małych liter, wielkich liter, cyfr lub symboli.
Na zamówienie Ta opcja zapewnia największą kontrolę nad regułami złożoności haseł. Umożliwia skonfigurowanie niestandardowej długości. Umożliwia również akceptowanie haseł tylko z liczbą (numerów PIN).

Opcje niestandardowe

Zestaw znaków

Umożliwia akceptowanie tylko cyfr (PIN-ów) lub pełnego zestawu znaków.

  • Tylko liczby umożliwiają wprowadzanie wyłącznie cyfr (0–9) podczas ustalania hasła.
  • Wszystkie zezwalają na dowolną literę, cyfrę lub symbol.

Długość

Umożliwia kontrolowanie wymagań dotyczących długości hasła.

  • Minimalna długość musi wynosić co najmniej 4.
  • Maksymalna długość musi być większa lub równa minimalnej długości, a maksymalnie może wynosić 256 znaków.

Klasy znaków

Umożliwia kontrolowanie różnych typów znaków używanych w haśle.

  • 2 z 4: Małe litery, wielkie litery, Liczba (0–9), Symbol zapewnia, że hasło zawiera co najmniej dwa typy znaków. Na przykład liczba i małe litery.

  • 3 z 4: Małe litery, wielkie litery, liczba (0–9), Symbol zapewnia, że hasło zawiera co najmniej trzy typy znaków. Na przykład liczba, mała litera i wielka litera.

  • 4 z 4: Małe litery, wielkie litery, Liczba (0–9), Symbol zapewnia, że hasło zawiera wszystkie cztery typy znaków.

    Uwaga

    Wymaganie 4 z 4 może spowodować frustrację użytkowników końcowych. Niektóre badania wykazały, że to wymaganie nie poprawia entropii haseł. Zobacz Wytyczne dotyczące haseł NIST

Walidacja predykatu hasła

Aby skonfigurować złożoność hasła, zastąp newPasswordreenterPassword i odwołaniem do weryfikacji predykatu. Element PredicateValidations grupuje zestaw predykatów w celu utworzenia weryfikacji danych wejściowych użytkownika, które można zastosować do typu oświadczenia. Otwórz plik rozszerzeń zasad. Na przykład SocialAndLocalAccounts/TrustFrameworkExtensions.xml.

  1. Wyszukaj element BuildingBlocks . Jeśli element nie istnieje, dodaj go.

  2. Znajdź element ClaimsSchema . Jeśli element nie istnieje, dodaj go.

  3. Dodaj oświadczenia newPassword oraz reenterPassword do elementu ClaimsSchema.

    <!-- 
    <BuildingBlocks>
      <ClaimsSchema> -->
        <ClaimType Id="newPassword">
          <PredicateValidationReference Id="CustomPassword" />
        </ClaimType>
        <ClaimType Id="reenterPassword">
          <PredicateValidationReference Id="CustomPassword" />
        </ClaimType>
      <!-- 
      </ClaimsSchema>
    </BuildingBlocks>-->
    
  4. Predykaty definiują podstawową walidację w celu sprawdzenia wartości typu oświadczenia i zwraca wartość true lub false. Walidacja odbywa się przy użyciu określonego elementu metody i zestawu parametrów istotnych dla metody. Dodaj następujące predykaty do elementu BuildingBlocks bezpośrednio po zamknięciu </ClaimsSchema> elementu:

    <!-- 
    <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">@#$%^&amp;*\-_+=[]{}|\\:',.?/`~"();!</Parameter>
          </Parameters>
        </Predicate>
      </Predicates>
    <!-- 
    </BuildingBlocks>-->
    
  5. Dodaj następujące weryfikacje predykatów do elementu BuildingBlocks zaraz po zamknięciu 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>-->
    

Wyłączanie silnego hasła

Poniższe profile techniczne to profile techniczne usługi Active Directory, które odczytują i zapisują dane w identyfikatorze Entra firmy Microsoft. Zastąp te profile techniczne w pliku rozszerzenia. Użyj PersistedClaims , aby wyłączyć politykę silnych haseł. Znajdź element ClaimsProviders . Dodaj następujących dostawców oświadczeń w następujący sposób:

<!-- 
<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>-->

Jeśli używasz zasad logowania opartego na nazwie użytkownika, zaktualizuj AAD-UserWriteUsingLogonEmail, AAD-UserWritePasswordUsingObjectId i LocalAccountWritePasswordUsingObjectId profile techniczne wprowadzając zasady DisableStrongPassword.

Zapisz plik strategii.

Testowanie zasad

Przekazywanie plików

  1. Zaloguj się do witryny Azure Portal.
  2. Jeśli masz dostęp do wielu dzierżaw, wybierz ikonę Ustawienia w górnym menu, aby przełączyć się na dzierżawę Azure AD B2C z menu Katalogi + subskrypcje.
  3. Wybierz pozycję Wszystkie usługi w lewym górnym rogu witryny Azure Portal, a następnie wyszukaj i wybierz pozycję Azure AD B2C.
  4. Wybierz Identity Experience Framework.
  5. Na stronie Zasady niestandardowe wybierz pozycję Prześlij zasady.
  6. Wybierz pozycję Zastąp politykę, jeśli istnieje, a następnie wyszukaj i wybierz plik TrustFrameworkExtensions.xml.
  7. Wybierz pozycję Prześlij.

Uruchamianie zasad

  1. Otwórz zasady rejestracji lub logowania, takie jak B2C_1A_signup_signin.
  2. W polu Application (Aplikacja) wybierz aplikację, która została wcześniej zarejestrowana. Aby wyświetlić token, adres URL odpowiedzi powinien zawierać wartość https://jwt.ms.
  3. Wybierz opcję Uruchom teraz.
  4. Wybierz pozycję Zarejestruj się teraz, wprowadź adres e-mail i wprowadź nowe hasło. Wskazówki są prezentowane na temat ograniczeń haseł. Zakończ wprowadzanie informacji o użytkowniku, a następnie wybierz pozycję Utwórz. Powinna zostać wyświetlona zawartość zwróconego tokenu.