Definiera en teknisk profil för Microsoft Entra ID SSPR i en anpassad Azure AD B2C-princip

Kommentar

I Azure Active Directory B2C är anpassade principer främst utformade för att hantera komplexa scenarier. I de flesta scenarier rekommenderar vi att du använder inbyggda användarflöden. Om du inte har gjort det kan du läsa mer om startpaketet för anpassad princip i Kom igång med anpassade principer i Active Directory B2C.

Azure Active Directory B2C (Azure AD B2C) har stöd för att verifiera en e-postadress för självbetjäning av lösenordsåterställning (SSPR). Använd den tekniska profilen Microsoft Entra ID SSPR för att generera och skicka en kod till en e-postadress och verifiera sedan koden. Den tekniska SSPR-profilen för Microsoft Entra ID kan också returnera ett felmeddelande. Den tekniska valideringsprofilen validerar användardata innan användarresan fortsätter. Med den tekniska verifieringsprofilen visas ett felmeddelande på en självsäkrad sida.

Den här tekniska profilen:

  • Tillhandahåller inte något gränssnitt för att interagera med användaren. I stället anropas användargränssnittet från en självkontrollerad teknisk profil eller en visningskontroll som en teknisk valideringsprofil.
  • Använder Microsoft Entra SSPR-tjänsten för att generera och skicka en kod till en e-postadress och verifierar sedan koden.
  • Verifierar en e-postadress via en verifieringskod.

Protokoll

Attributet Namn för protokollelementet måste anges till Proprietary. Hanterarattributet måste innehålla det fullständigt kvalificerade namnet på protokollhanterarsammansättningen som används av Azure AD B2C:

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

I följande exempel visas en teknisk SSPR-profil för Microsoft Entra ID:

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

Skicka e-postmeddelande

Det första läget för den här tekniska profilen är att generera en kod och skicka den. Följande alternativ kan konfigureras för det här läget.

Indataanspråk

Elementet InputClaims innehåller en lista över anspråk som ska skickas till Microsoft Entra SSPR. Du kan också mappa namnet på ditt anspråk till det namn som definierats i den tekniska SSPR-profilen.

ClaimReferenceId Obligatoriskt Beskrivning
Emailaddress Ja Identifieraren för den användare som äger e-postadressen. Egenskapen PartnerClaimType för indataanspråket måste anges till emailAddress.

Elementet InputClaimsTransformations kan innehålla en samling InputClaimsTransformation-element som används för att ändra indataanspråken eller generera nya innan de skickas till Microsoft Entra SSPR-tjänsten.

Utdataanspråk

Microsoft Entra SSPR-protokollprovidern returnerar inga OutputClaims, vilket innebär att det inte finns något behov av att ange utdataanspråk. Du kan dock inkludera anspråk som inte returneras av Microsoft Entra SSPR-protokollprovidern så länge du anger DefaultValue attributet.

Elementet OutputClaimsTransformations kan innehålla en samling OutputClaimsTransformation-element som används för att ändra utdataanspråken eller generera nya.

Metadata

Attribut Obligatoriskt Beskrivning
Åtgärd Ja Måste vara SendCode.

Användargränssnittselement

Följande metadata kan användas för att konfigurera de felmeddelanden som visas när SMS-fel skickas. Metadata ska konfigureras i den självsäkra tekniska profilen. Felmeddelandena kan lokaliseras.

Attribut Obligatoriskt Beskrivning
UserMessageIfInternalError Nej Användarens felmeddelande om servern har påträffat ett internt fel.
UserMessageIfThrottled Nej Användarfelmeddelande om en begäran har begränsats.

Exempel: skicka ett e-postmeddelande

I följande exempel visas en teknisk SSPR-profil för Microsoft Entra ID som används för att skicka en kod via e-post.

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

Verifiera koden

Det andra läget för den här tekniska profilen är att verifiera en kod. Följande alternativ kan konfigureras för det här läget.

Indataanspråk

Elementet InputClaims innehåller en lista över anspråk som ska skickas till Microsoft Entra SSPR. Du kan också mappa namnet på ditt anspråk till det namn som definierats i den tekniska SSPR-profilen.

ClaimReferenceId Obligatoriskt Beskrivning
Emailaddress Ja Samma e-postadress som tidigare användes för att skicka en kod. Den används också för att hitta en e-postverifieringssession. Egenskapen PartnerClaimType för indataanspråket måste anges till emailAddress.
verificationCode Ja Verifieringskoden som tillhandahålls av användaren som ska verifieras. Egenskapen PartnerClaimType för indataanspråket måste anges till verificationCode.

Elementet InputClaimsTransformations kan innehålla en samling InputClaimsTransformation-element som används för att ändra indataanspråken eller generera nya innan du anropar Microsoft Entra SSPR-tjänsten.

Utdataanspråk

Microsoft Entra SSPR-protokollprovidern returnerar inga OutputClaims, vilket innebär att det inte finns något behov av att ange utdataanspråk. Du kan dock inkludera anspråk som inte returneras av Microsoft Entra SSPR-protokollprovidern så länge du anger DefaultValue attributet.

Elementet OutputClaimsTransformations kan innehålla en samling OutputClaimsTransformation-element som används för att ändra utdataanspråken eller generera nya.

Metadata

Attribut Obligatoriskt Beskrivning
Åtgärd Ja Måste vara VerifyCode

Användargränssnittselement

Följande metadata kan användas för att konfigurera felmeddelandena som visas vid kodverifieringsfel. Metadata ska konfigureras i den självsäkra tekniska profilen. Felmeddelandena kan lokaliseras.

Attribut Obligatoriskt Beskrivning
UserMessageIfChallengeExpired Meddelandet som ska visas för användaren om kodverifieringssessionen har upphört att gälla. Antingen har koden upphört att gälla eller så har koden aldrig genererats för en viss identifierare.
UserMessageIfInternalError Användarens felmeddelande om servern har påträffat ett internt fel.
UserMessageIfThrottled Användarfelmeddelande om en begäran har begränsats.
UserMessageIfVerificationFailedNoRetry Meddelandet som ska visas för användaren om de har angett en ogiltig kod och användaren inte får ange rätt kod.
UserMessageIfVerificationFailedRetryAllowed Meddelandet som ska visas för användaren om de har angett en ogiltig kod och användaren får ange rätt kod.

Exempel: verifiera en kod

I följande exempel visas en teknisk SSPR-profil för Microsoft Entra ID som används för att verifiera koden.

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