Bagikan melalui


Menentukan profil teknis Microsoft Entra ID SSPR dalam kebijakan kustom Azure AD B2C

Catatan

Di Azure Active Directory B2C, kebijakan kustom didesain khusus untuk menangani skenario kompleks. Untuk skenario umum, sebaiknya gunakan alur pengguna bawaan. Jika Anda belum melakukannya, pelajari tentang paket starter kebijakan kustom di Mulai dengan kebijakan kustom di Azure Active Directory B2C.

Azure Active Directory B2C (Azure AD B2C) menyediakan dukungan untuk memverifikasi alamat email untuk reset kata sandi layanan mandiri (SSPR). Gunakan profil teknis Microsoft Entra ID SSPR untuk membuat dan mengirim kode ke alamat email, lalu verifikasi kode. Profil teknis Microsoft Entra ID SSPR juga dapat mengembalikan pesan kesalahan. Profil teknis validasi memvalidasi data yang disediakan pengguna sebelum perjalanan berlanjut. Dengan profil teknis validasi, pesan kesalahan ditampilkan di halaman yang dibuat sendiri.

Profil teknis ini:

  • Tidak menyediakan antarmuka untuk berinteraksi dengan pengguna. Sebaliknya, antarmuka pengguna dipanggil dari profil teknis self-asserted, atau kendali tampilan sebagai profil teknis validasi.
  • Menggunakan layanan Microsoft Entra SSPR untuk menghasilkan dan mengirim kode ke alamat email, lalu memverifikasi kode.
  • Memvalidasi alamat email melalui kode verifikasi.

Protokol

Atribut Nama dari elemen Protokol perlu diatur ke Proprietary. Atribut handler harus berisi nama yang sepenuhnya memenuhi syarat dari perakitan handler protokol yang digunakan oleh Azure AD B2C:

Web.TPEngine.Providers.AadSsprProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null

Contoh berikut menunjukkan profil teknis Microsoft Entra ID SSPR:

<TechnicalProfile Id="AadSspr-SendCode">
  <DisplayName>Send Code</DisplayName>
  <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AadSsprProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
    ...

Kirim email

Mode pertama dari profil teknis ini adalah menghasilkan kode dan mengirimnya. Opsi berikut dapat dikonfigurasi untuk mode ini.

Klaim input

Elemen InputClaims berisi daftar klaim untuk dikirim ke Microsoft Entra SSPR. Anda juga dapat memetakan nama klaim Anda ke nama yang ditentukan dalam profil teknis SSPR.

ClaimReferenceId Wajib Deskripsi
alamatEmail Ya Pengidentifikasi untuk pengguna yang memiliki alamat email. PartnerClaimTypeProperti klaim input harus diatur ke emailAddress.

Elemen InputClaimsTransformations mungkin berisi kumpulan elemen InputClaimsTransformation yang digunakan untuk memodifikasi klaim input atau menghasilkan yang baru sebelum mengirim ke layanan Microsoft Entra SSPR.

Klaim output

Penyedia protokol Microsoft Entra SSPR tidak mengembalikan OutputClaims apa pun, sehingga tidak perlu menentukan klaim output. Namun, Anda dapat menyertakan klaim yang tidak dikembalikan oleh penyedia protokol Microsoft Entra SSPR selama Anda mengatur DefaultValue atribut.

Elemen OutputClaimsTransformations mungkin berisi kumpulan elemen OutputClaimsTransformation yang digunakan untuk memodifikasi klaim output atau menghasilkan yang baru.

Metadata

Atribut Wajib Deskripsi
Operasi Ya Harus SendCode.

Elemen antarmuka pengguna

Metadata berikut dapat digunakan untuk mengonfigurasi pesan kesalahan yang ditampilkan saat kegagalan mengirim SMS. Metadata harus dikonfigurasi dalam profil teknis yang dibuat sendiri. Pesan kesalahan dapat dilokalisasi.

Atribut Wajib Deskripsi
UserMessageIfInternalError Tidak Pesan kesalahan pengguna jika server mengalami Pesan kesalahan internal.
UserMessageJikaThrottled Tidak Pesan kesalahan pengguna jika permintaan telah dibatasi.

Contoh: mengirim email

Contoh berikut menunjukkan profil teknis Microsoft Entra ID SSPR yang digunakan untuk mengirim kode melalui email.

<TechnicalProfile Id="AadSspr-SendCode">
  <DisplayName>Send Code</DisplayName>
  <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AadSsprProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
  <Metadata>
    <Item Key="Operation">SendCode</Item>
  </Metadata>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="emailAddress"/>
  </InputClaims>
</TechnicalProfile>

Verifikasi kode

Mode kedua dari profil teknis ini adalah memverifikasi kode. Opsi berikut dapat dikonfigurasi untuk mode ini.

Klaim input

Elemen InputClaims berisi daftar klaim untuk dikirim ke Microsoft Entra SSPR. Anda juga dapat memetakan nama klaim Anda ke nama yang ditentukan dalam profil teknis SSPR.

ClaimReferenceId Wajib Deskripsi
alamatEmail Ya Alamat email yang sama seperti yang sebelumnya digunakan untuk mengirim kode. Ini juga digunakan untuk menemukan sesi verifikasi email. PartnerClaimTypeProperti klaim input harus diatur ke emailAddress.
verificationCode Ya Kode verifikasi yang disediakan oleh pengguna. PartnerClaimTypeProperti klaim input harus diatur ke verificationCode.

Elemen InputClaimsTransformations mungkin berisi kumpulan elemen InputClaimsTransformation yang digunakan untuk memodifikasi klaim input atau menghasilkan yang baru sebelum memanggil layanan Microsoft Entra SSPR.

Klaim output

Penyedia protokol Microsoft Entra SSPR tidak mengembalikan OutputClaims apa pun, sehingga tidak perlu menentukan klaim output. Namun, Anda dapat menyertakan klaim yang tidak dikembalikan oleh penyedia protokol Microsoft Entra SSPR selama Anda mengatur DefaultValue atribut.

Elemen OutputClaimsTransformations mungkin berisi kumpulan elemen OutputClaimsTransformation yang digunakan untuk memodifikasi klaim output atau menghasilkan yang baru.

Metadata

Atribut Wajib Deskripsi
Operasi Ya Harus VerifyCode

Elemen antarmuka pengguna

Metadata berikut dapat digunakan untuk mengkonfigurasi pesan kesalahan yang ditampilkan saat kegagalan verifikasi kode. Metadata harus dikonfigurasi dalam profil teknis yang dibuat sendiri. Pesan kesalahan dapat dilokalisasi.

Atribut Wajib Deskripsi
UserMessageIfChallengeExpired Pesan untuk ditampilkan kepada pengguna jika sesi verifikasi kode telah kedaluwarsa. Antara kode telah kedaluwarsa atau kode belum pernah dihasilkan untuk pengidentifikasi tertentu.
UserMessageIfInternalError Pesan kesalahan pengguna jika server mengalami Pesan kesalahan internal.
UserMessageJikaThrottled Pesan kesalahan pengguna jika permintaan telah dibatasi.
UserMessageJikaVerifikasiFailedNoRetry Pesan yang akan ditampilkan kepada pengguna jika mereka memberikan kode yang tidak valid, dan pengguna diizinkan untuk memberikan kode yang benar.
UserMessageIfVerificationFailedRetryAllowed Pesan yang akan ditampilkan kepada pengguna jika mereka memberikan kode yang tidak valid, dan pengguna diizinkan untuk memberikan kode yang benar.

Contoh: memverifikasi kode

Contoh berikut menunjukkan profil teknis Microsoft Entra ID SSPR yang digunakan untuk memverifikasi kode.

<TechnicalProfile Id="AadSspr-VerifyCode">
  <DisplayName>Verify Code</DisplayName>
  <Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.AadSsprProtocolProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
  <Metadata>
    <Item Key="Operation">VerifyCode</Item>
  </Metadata>
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="verificationCode" PartnerClaimType="verificationCode" />
    <InputClaim ClaimTypeReferenceId="email" PartnerClaimType="emailAddress"/>
  </InputClaims>
</TechnicalProfile>