Udostępnij za pośrednictwem


Definiowanie profilu technicznego samoobsługowego resetowania hasła identyfikatora firmy Microsoft w niestandardowych zasadach usługi Azure AD B2C

Uwaga

W usłudze Azure Active Directory B2C zasady niestandardowe są przeznaczone głównie do rozwiązywania złożonych scenariuszy. W przypadku większości scenariuszy zalecamy używanie wbudowanych przepływów użytkownika. Jeśli nie zostało to zrobione, dowiedz się więcej o niestandardowym pakiecie startowym zasad w temacie Wprowadzenie do zasad niestandardowych w usłudze Active Directory B2C.

Usługa Azure Active Directory B2C (Azure AD B2C) zapewnia obsługę weryfikowania adresu e-mail na potrzeby samoobsługowego resetowania hasła (SSPR). Użyj profilu technicznego samoobsługowego resetowania hasła identyfikatora firmy Microsoft, aby wygenerować i wysłać kod na adres e-mail, a następnie zweryfikować kod. Profil techniczny samoobsługowego resetowania hasła firmy Microsoft może również zwrócić komunikat o błędzie. Profil techniczny weryfikacji weryfikuje dane dostarczone przez użytkownika przed kontynuowaniem podróży użytkownika. W przypadku profilu technicznego weryfikacji na stronie samodzielnej asertywnej jest wyświetlany komunikat o błędzie.

Ten profil techniczny:

  • Nie udostępnia interfejsu do interakcji z użytkownikiem. Zamiast tego interfejs użytkownika jest wywoływany z własnego profilu technicznego lub kontrolki wyświetlania jako profil techniczny weryfikacji.
  • Używa usługi microsoft Entra SSPR do generowania i wysyłania kodu na adres e-mail, a następnie weryfikuje kod.
  • Weryfikuje adres e-mail za pośrednictwem kodu weryfikacyjnego.

Protokół

Atrybut Name elementu Protocol musi być ustawiony na Proprietary. Atrybut programu obsługi musi zawierać w pełni kwalifikowaną nazwę zestawu obsługi protokołu, który jest używany przez usługę Azure AD B2C:

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

W poniższym przykładzie przedstawiono profil techniczny samoobsługowego resetowania hasła identyfikatora firmy Microsoft:

<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" />
    ...

Wyślij wiadomość e-mail

Pierwszym trybem tego profilu technicznego jest wygenerowanie kodu i wysłanie go. Dla tego trybu można skonfigurować następujące opcje.

Oświadczenia wejściowe

Element InputClaims zawiera listę oświadczeń wysyłanych do usługi Microsoft Entra SSPR. Możesz również zamapować nazwę oświadczenia na nazwę zdefiniowaną w profilu technicznym samoobsługowego resetowania hasła.

ClaimReferenceId Wymagania opis
Emailaddress Tak Identyfikator użytkownika, który jest właścicielem adresu e-mail. Właściwość PartnerClaimType oświadczenia wejściowego musi być ustawiona na emailAddress.

Element InputClaimsTransformations może zawierać kolekcję elementów InputClaimsTransformation , które są używane do modyfikowania oświadczeń wejściowych lub generowania nowych przed wysłaniem do usługi Microsoft Entra SSPR.

Oświadczenia wyjściowe

Dostawca protokołu SSPR firmy Microsoft nie zwraca żadnych danych OutputClaims, dlatego nie ma potrzeby określania oświadczeń wyjściowych. Można jednak uwzględnić oświadczenia, które nie są zwracane przez dostawcę protokołu Microsoft Entra SSPR, o ile ustawisz DefaultValue atrybut.

Element OutputClaimsTransformations może zawierać kolekcję elementów OutputClaimsTransformation , które są używane do modyfikowania oświadczeń wyjściowych lub generowania nowych.

Metadane

Atrybut Wymagania opis
Operation Tak Musi mieć wartość SendCode.

Elementy interfejsu użytkownika

Następujące metadane mogą służyć do konfigurowania komunikatów o błędach wyświetlanych podczas wysyłania komunikatów SMS. Metadane należy skonfigurować w profilu technicznym asertywnego. Komunikaty o błędach mogą być zlokalizowane.

Atrybut Wymagania opis
UserMessageIfInternalError Nie. Komunikat o błędzie użytkownika, jeśli serwer napotkał błąd wewnętrzny.
UserMessageIfThrottled Nie. Komunikat o błędzie użytkownika, jeśli żądanie zostało ograniczone.

Przykład: wysyłanie wiadomości e-mail

W poniższym przykładzie pokazano profil techniczny samoobsługowego resetowania hasła firmy Microsoft, który jest używany do wysyłania kodu za pośrednictwem poczty e-mail.

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

Zweryfikuj kod

Drugi tryb tego profilu technicznego polega na zweryfikowaniu kodu. Dla tego trybu można skonfigurować następujące opcje.

Oświadczenia wejściowe

Element InputClaims zawiera listę oświadczeń wysyłanych do usługi Microsoft Entra SSPR. Możesz również zamapować nazwę oświadczenia na nazwę zdefiniowaną w profilu technicznym samoobsługowego resetowania hasła.

ClaimReferenceId Wymagania opis
Emailaddress Tak Ten sam adres e-mail, który był wcześniej używany do wysyłania kodu. Służy również do lokalizowania sesji weryfikacji poczty e-mail. Właściwość PartnerClaimType oświadczenia wejściowego musi być ustawiona na emailAddress.
verificationCode Tak Kod weryfikacyjny dostarczony przez użytkownika do zweryfikowania. Właściwość PartnerClaimType oświadczenia wejściowego musi być ustawiona na verificationCode.

Element InputClaimsTransformations może zawierać kolekcję elementów InputClaimsTransformation , które są używane do modyfikowania oświadczeń wejściowych lub generowania nowych przed wywołaniem usługi SSPR firmy Microsoft.

Oświadczenia wyjściowe

Dostawca protokołu SSPR firmy Microsoft nie zwraca żadnych danych OutputClaims, dlatego nie ma potrzeby określania oświadczeń wyjściowych. Można jednak uwzględnić oświadczenia, które nie są zwracane przez dostawcę protokołu Microsoft Entra SSPR, o ile ustawisz DefaultValue atrybut.

Element OutputClaimsTransformations może zawierać kolekcję elementów OutputClaimsTransformation , które są używane do modyfikowania oświadczeń wyjściowych lub generowania nowych.

Metadane

Atrybut Wymagania opis
Operation Tak Musi mieć wartość VerifyCode

Elementy interfejsu użytkownika

Następujące metadane mogą służyć do konfigurowania komunikatów o błędach wyświetlanych po niepowodzeniu weryfikacji kodu. Metadane należy skonfigurować w profilu technicznym asertywnego. Komunikaty o błędach mogą być zlokalizowane.

Atrybut Wymagania opis
UserMessageIfChallengeExpired Komunikat wyświetlany użytkownikowi, jeśli sesja weryfikacji kodu wygasła. Kod wygasł lub kod nigdy nie został wygenerowany dla danego identyfikatora.
UserMessageIfInternalError Komunikat o błędzie użytkownika, jeśli serwer napotkał błąd wewnętrzny.
UserMessageIfThrottled Komunikat o błędzie użytkownika, jeśli żądanie zostało ograniczone.
UserMessageIfVerificationFailedNoRetry Komunikat wyświetlany użytkownikowi, jeśli podano nieprawidłowy kod, a użytkownik nie może podać poprawnego kodu.
UserMessageIfVerificationFailedRetryAllowed Komunikat wyświetlany użytkownikowi, jeśli podano nieprawidłowy kod, a użytkownik może podać prawidłowy kod.

Przykład: weryfikowanie kodu

W poniższym przykładzie pokazano profil techniczny samoobsługowego resetowania hasła firmy Microsoft używany do weryfikowania kodu.

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