Mengonfigurasi persyaratan kompleksitas untuk kata sandi di Azure Active Directory B2C

Penting

Berlaku mulai 1 Mei 2025, Azure AD B2C tidak akan lagi tersedia untuk dibeli untuk pelanggan baru. Pelajari lebih lanjut di FAQ kami.

Sebelum memulai, gunakan pemilih Pilih jenis kebijakan di bagian atas halaman ini untuk memilih jenis kebijakan yang Anda siapkan. Azure Active Directory B2C menawarkan dua metode untuk menentukan cara pengguna berinteraksi dengan aplikasi Anda: melalui alur pengguna yang telah ditentukan sebelumnya atau melalui kebijakan kustom yang sepenuhnya dapat dikonfigurasi. Langkah yang diperlukan dalam artikel ini berbeda untuk setiap metode.

Azure Active Directory B2C (Azure AD B2C) mendukung perubahan persyaratan kompleksitas untuk kata sandi yang disediakan oleh pengguna akhir saat membuat akun. Secara default, Azure AD B2C menggunakan kata sandi yang kuat . Azure AD B2C juga mendukung opsi konfigurasi untuk mengontrol kompleksitas kata sandi yang dapat digunakan pelanggan.

Prasyarat

Penegakan aturan kata sandi

Selama pendaftaran atau reset kata sandi, pengguna akhir harus menyediakan kata sandi yang memenuhi aturan kompleksitas. Aturan kompleksitas kata sandi diberlakukan per alur pengguna. Dimungkinkan untuk memiliki satu alur pengguna memerlukan pin empat digit selama pendaftaran sementara alur pengguna lain memerlukan string delapan karakter selama pendaftaran. Misalnya, Anda dapat menggunakan alur pengguna dengan kompleksitas kata sandi yang berbeda untuk orang dewasa daripada untuk anak-anak.

Kompleksitas kata sandi tidak pernah diberlakukan saat proses masuk. Pengguna tidak pernah diminta selama masuk untuk mengubah kata sandi mereka karena tidak memenuhi persyaratan kompleksitas saat ini.

Anda dapat mengonfigurasi kompleksitas kata sandi dalam jenis alur pengguna berikut:

  • Alur pengguna Pendaftaran atau Masuk
  • Alur pengguna Reset Kata Sandi

Jika Anda menggunakan kebijakan kustom, Anda dapat mengonfigurasi kompleksitas kata sandi dalam kebijakan kustom.

Mengonfigurasi kompleksitas kata sandi

  1. Masuk ke portal Azure.
  2. Jika Anda memiliki akses ke beberapa penyewa, pilih ikon Pengaturan di menu atas untuk beralih ke penyewa Azure AD B2C Anda dari menu Direktori + langganan .
  3. Di portal Microsoft Azure, cari dan pilih AAD B2C.
  4. Pilih alur pengguna .
  5. Pilih alur pengguna, dan pilih Properti.
  6. Di bawah Kompleksitas kata sandi, ubah kompleksitas kata sandi untuk alur pengguna ini menjadi Sederhana, Kuat, atau Kustom.

Bagan Perbandingan

Kompleksitas Deskripsi
Sederhana Kata sandi yang setidaknya 8 hingga 64 karakter.
Kuat Kata sandi yang setidaknya 8 hingga 64 karakter. Ini membutuhkan 3 dari 4 huruf kecil, huruf besar, angka, atau simbol.
Kustom Opsi ini memberikan kontrol paling besar atas aturan kompleksitas kata sandi. Ini memungkinkan mengonfigurasi panjang kustom. Ini juga memungkinkan menerima kata sandi khusus nomor (pin).

Opsi Kustomisasi

Set Karakter

Memungkinkan Anda menerima digit saja (pin) atau set karakter lengkap.

  • Hanya angka hanya mengizinkan digit (0-9) saat memasukkan kata sandi.
  • Semua mengizinkan huruf, angka, atau simbol apa pun.

Panjang

Memungkinkan Anda mengontrol persyaratan panjang kata sandi.

  • Panjang Minimum harus minimal 4.
  • Panjang Maksimum harus lebih besar atau sama dengan panjang minimum dan paling banyak bisa 256 karakter.

Kelas karakter

Memungkinkan Anda mengontrol berbagai jenis karakter yang digunakan dalam kata sandi.

  • 2 dari 4: Karakter huruf kecil, karakter Huruf besar, Angka (0-9), Simbol memastikan kata sandi berisi setidaknya dua jenis karakter. Misalnya, angka dan karakter huruf kecil.

  • 3 dari 4: Karakter huruf kecil, karakter Huruf besar, Angka (0-9), Simbol memastikan kata sandi berisi setidaknya tiga jenis karakter. Misalnya, angka, karakter huruf kecil, dan karakter huruf besar.

  • 4 dari 4: Karakter huruf kecil, karakter Huruf besar, Angka (0-9), Simbol memastikan kata sandi berisi keempat jenis karakter.

    Nota

    Membutuhkan 4 dari 4 dapat mengakibatkan frustrasi pengguna akhir. Beberapa penelitian telah menunjukkan bahwa persyaratan ini tidak meningkatkan entropi kata sandi. Lihat Panduan Kata Sandi NIST

Validasi syarat kata sandi

Untuk mengonfigurasi kompleksitas kata sandi, ambil alih newPassword dan reenterPasswordjenis klaim dengan referensi ke validasi predikat. Elemen PredicateValidations mengelompokkan sekumpulan predikat untuk membentuk validasi input pengguna yang dapat diterapkan ke jenis klaim. Buka file ekstensi kebijakan Anda. Contohnya, SocialAndLocalAccounts/TrustFrameworkExtensions.xml.

  1. Cari elemen BuildingBlocks . Jika elemen tidak ada, tambahkan elemen tersebut.

  2. Temukan elemen ClaimsSchema . Jika elemen tidak ada, tambahkan elemen tersebut.

  3. newPassword Tambahkan klaim dan reenterPassword ke elemen ClaimsSchema.

    <!-- 
    <BuildingBlocks>
      <ClaimsSchema> -->
        <ClaimType Id="newPassword">
          <PredicateValidationReference Id="CustomPassword" />
        </ClaimType>
        <ClaimType Id="reenterPassword">
          <PredicateValidationReference Id="CustomPassword" />
        </ClaimType>
      <!-- 
      </ClaimsSchema>
    </BuildingBlocks>-->
    
  4. Predikat mendefinisikan validasi dasar untuk memeriksa nilai jenis klaim dan mengembalikan true atau false. Validasi dilakukan dengan menggunakan elemen metode tertentu, dan sekumpulan parameter yang relevan dengan metode . Tambahkan predikat berikut ke elemen BuildingBlocks , segera setelah penutupan </ClaimsSchema> elemen:

    <!-- 
    <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. Tambahkan validasi predikat berikut ke elemen BuildingBlocks , segera setelah penutupan </Predicates> elemen:

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

Menonaktifkan kata sandi yang kuat

Profil teknis berikut adalah profil teknis Direktori Aktif, yang membaca dan menulis data ke ID Microsoft Entra. Ambil alih profil teknis ini dalam file ekstensi. Gunakan PersistedClaims untuk menonaktifkan kebijakan kata sandi yang kuat. Temukan elemen ClaimsProviders . Tambahkan penyedia klaim berikut sebagai berikut:

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

Jika Anda menggunakan kebijakan masuk berbasis nama pengguna , perbarui AAD-UserWriteUsingLogonEmailprofil teknis , , AAD-UserWritePasswordUsingObjectIddan LocalAccountWritePasswordUsingObjectId dengan kebijakan DisableStrongPassword .

Simpan file kebijakan.

Menguji kebijakan Anda

Mengunggah file

  1. Masuk ke portal Azure.
  2. Jika Anda memiliki akses ke beberapa penyewa, pilih ikon Pengaturan di menu atas untuk beralih ke penyewa Azure AD B2C Anda dari menu Direktori + langganan .
  3. Pilih Semua layanan di sudut kiri atas portal Microsoft Azure, lalu cari dan pilih Azure AD B2C.
  4. Pilih Kerangka Kerja Pengalaman Identitas.
  5. Pada halaman Kebijakan Kustom, pilih Unggah Kebijakan.
  6. Pilih Timpa kebijakan jika ada, lalu cari kemudian pilih file TrustFrameworkExtensions.xml.
  7. Pilih Unggah.

Menjalankan kebijakan

  1. Buka kebijakan pendaftaran atau masuk seperti B2C_1A_signup_signin.
  2. Untuk Aplikasi, pilih aplikasi yang sebelumnya Anda daftarkan. Untuk melihat token, URL Balasan akan menampilkan https://jwt.ms.
  3. Pilih Jalankan sekarang.
  4. Pilih Daftar sekarang, masukkan alamat email, dan masukkan kata sandi baru. Panduan disajikan pada pembatasan kata sandi. Selesai memasukkan informasi pengguna, lalu pilih Buat. Anda akan melihat konten token yang dikembalikan.