Besturingselementen weergeven

Notitie

In Azure Active Directory B2C is aangepast beleid voornamelijk bedoeld om met complexe scenario's om te gaan. Voor de meeste scenario's wordt aangeraden ingebouwde gebruikersstromen te gebruiken. Als u dit nog niet hebt gedaan, vindt u meer informatie over aangepast beleid in het starterspakket in Aan de slag met aangepaste beleidsregels in Active Directory B2C.

Een weergavebesturingselement is een gebruikersinterface-element dat speciale functionaliteit heeft en communiceert met de back-endservice van Azure Active Directory B2C (Azure AD B2C). Hiermee kan de gebruiker acties uitvoeren op de pagina die een technisch validatieprofiel aanroept aan de back-end. Weergavebesturingselementen worden weergegeven op de pagina en worden verwezen door een zelf-asserted technisch profiel.

Vereisten

In de sectie Metagegevens van een zelf-asserted technisch profiel moet de inhoudsdefinition waarnaar wordt verwezen, zijn DataUri ingesteld op paginacontractversie 2.1.9 of hoger. Voorbeeld:

<ContentDefinition Id="api.selfasserted">
  <LoadUri>~/tenant/default/selfAsserted.cshtml</LoadUri>
  <RecoveryUri>~/common/default_page_error.html</RecoveryUri>
  <DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:2.1.9</DataUri>
  ...

Weergavebesturingselementen definiëren

Het Element DisplayControl bevat de volgende kenmerken:

Kenmerk Vereist Omschrijving
Id Ja Een id die wordt gebruikt voor het weergavebeheer. Er kan naar worden verwezen.
UserInterfaceControlType Ja Het type weergave besturingselement. Momenteel ondersteund is VerificationControl, TOTP-besturingselementen en CAPTCHA-besturingselementen.

Verificatiebeheer

Het controlebesturingselement voor verificatie controleert claims, bijvoorbeeld een e-mailadres of telefoonnummer, met een verificatiecode die naar de gebruiker wordt verzonden. In de volgende afbeelding ziet u een zelf-assertiepagina met twee weergavebesturingselementen waarmee een primair en secundair e-mailadres wordt gevalideerd.

Screenshot showing email verification display control

TOTP-besturingselementen

De TOTP-weergavebesturingselementen zijn een set weergavebesturingselementen die TOTP-meervoudige verificatie bieden met de Microsoft Authenticator-app. In de volgende afbeelding ziet u een TOTP-inschrijvingspagina met de drie weergavebesturingselementen.

Screenshot showing TOTP display controls

QrCodeControl

Het Element DisplayControl bevat de volgende elementen:

Element Instanties Beschrijving
InputClaims 0:1 InputClaims worden gebruikt om de waarde van de claims die moeten worden verzameld van de gebruiker vooraf in te vullen. Zie het element InputClaims voor meer informatie.
DisplayClaims 0:1 DisplayClaims worden gebruikt om claims weer te geven die van de gebruiker moeten worden verzameld. Zie DisplayClaim-element voor meer informatie.
OutputClaims 0:1 OutputClaims worden gebruikt om claims te vertegenwoordigen die tijdelijk moeten worden opgeslagen voor deze DisplayControl. Zie het element OutputClaims voor meer informatie.
Actions 0:1 Acties worden gebruikt om de technische validatieprofielen weer te geven die moeten worden aangeroepen voor gebruikersacties die plaatsvinden aan de front-end.

Invoerclaims

In een weergavebesturingselement kunt u InputClaims-elementen gebruiken om de waarde van claims vooraf in te vullen om van de gebruiker op de pagina te verzamelen. InputClaimsTransformations kunnen worden gedefinieerd in het zelfbeëigende technische profiel, dat verwijst naar dit weergavebesturingselement.

In het volgende voorbeeld wordt het e-mailadres vooraf ingevuld dat moet worden geverifieerd met het adres dat al aanwezig is.

<DisplayControl Id="emailControl" UserInterfaceControlType="VerificationControl">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="emailAddress" />
  </InputClaims>
  ...

Claims weergeven

Voor elk type weergavebeheer moet een andere set weergaveclaims, uitvoerclaims en acties worden uitgevoerd.

Net als de weergaveclaims die zijn gedefinieerd in een zelf-asserted technisch profiel, vertegenwoordigen de weergaveclaims de claims die moeten worden verzameld van de gebruiker in het weergavebesturingselement. Het claimtype-element waarnaar wordt verwezen, moet het element UserInputType opgeven voor een gebruikersinvoertype dat wordt ondersteund door Azure AD B2C, zoals TextBox of DropdownSingleSelect. Als een weergaveclaimwaarde vereist is voor een actie, stelt u het kenmerk Vereist in om true de gebruiker te dwingen een waarde op te geven voor die specifieke weergaveclaim.

Bepaalde weergaveclaims zijn vereist voor bepaalde typen weergavebeheer. Verificatiecode is bijvoorbeeld vereist voor het weergavebeheer van het type VerificationControl. Gebruik het kenmerk ControlClaimType om op te geven welke DisplayClaim is aangewezen voor die vereiste claim. Voorbeeld:

<DisplayClaim ClaimTypeReferenceId="otpCode" ControlClaimType="VerificationCode" Required="true" />

Uitvoerclaims

De uitvoerclaims van een weergavebeheer worden niet verzonden naar de volgende indelingsstap. Ze worden tijdelijk alleen opgeslagen voor de huidige weergavebeheersessie. Deze tijdelijke claims kunnen worden gedeeld tussen de verschillende acties van hetzelfde weergavebeheer.

Als u de uitvoerclaims naar de volgende indelingsstap wilt opbellen, gebruikt u de OutputClaims van het werkelijke zelfbeëindigde technische profiel, dat verwijst naar dit weergavebesturingselement.

Besturingsacties weergeven

De acties van een weergavebeheer zijn procedures die plaatsvinden in de Azure AD B2C-back-end wanneer een gebruiker een bepaalde actie uitvoert aan de clientzijde (de browser). De validaties die moeten worden uitgevoerd wanneer de gebruiker bijvoorbeeld een knop op de pagina selecteert.

Een actie definieert een lijst met technische validatieprofielen. Ze worden gebruikt voor het valideren van sommige of alle weergaveclaims van het weergavebeheer. Het technische validatieprofiel valideert de invoer van de gebruiker en kan een fout aan de gebruiker retourneren. U kunt ContinueOnError, ContinueOnSuccess en Voorwaarden gebruiken in de weergavebesturingsactie, vergelijkbaar met de manier waarop ze worden gebruikt in validatie technische profielen in een zelf-asserted technisch profiel.

Acties

Het element Acties bevat het volgende element:

Element Instanties Beschrijving
Action 1:n Lijst met acties die moeten worden uitgevoerd.

Actie

Het element Actie bevat het volgende kenmerk:

Kenmerk Vereist Omschrijving
Id Ja Het type bewerking. Mogelijke waarden: SendCode of VerifyCode. De SendCode waarde verzendt een code naar de gebruiker. Deze actie kan twee technische validatieprofielen bevatten: één voor het genereren van een code en één om deze te verzenden. De VerifyCode waarde controleert de code die de gebruiker in het invoertekstvak heeft getypt.

Het element Actie bevat het volgende element:

Element Instanties Beschrijving
ValidationClaimsExchange 1:1 De id's van technische profielen die worden gebruikt voor het valideren van enkele of alle weergaveclaims van het technische profiel waarnaar wordt verwezen. Alle invoerclaims van het technische profiel waarnaar wordt verwezen, moeten worden weergegeven in de weergaveclaims van het technische profiel waarnaar wordt verwezen.

ValidationClaimsExchange

Het element ValidationClaimsExchange bevat het volgende element:

Element Instanties Beschrijving
ValidationClaimsExchangeTechnicalProfile 1:n Een technisch profiel dat moet worden gebruikt voor het valideren van enkele of alle weergaveclaims van het verwijzende technische profiel.

Het element ValidationClaimsExchangeTechnicalProfile bevat het volgende kenmerk:

Kenmerk Vereist Omschrijving
TechnicalProfileReferenceId Ja Een id van een technisch profiel dat al is gedefinieerd in het beleid of het bovenliggende beleid.

Het element ValidationClaimsExchangeTechnicalProfile bevat het volgende element:

Element Instanties Beschrijving
Preconditions 0:1 Een lijst met voorwaarden waaraan moet worden voldaan om het technische validatieprofiel uit te voeren.

Het element Voorwaarde bevat de volgende kenmerken:

Kenmerk Vereist Omschrijving
Type Ja Het type controle of query dat moet worden uitgevoerd voor de voorwaarde. Mogelijke waarden: ClaimsExist of ClaimEquals. ClaimsExist geeft aan dat de acties moeten worden uitgevoerd als de opgegeven claims aanwezig zijn in de huidige claimset van de gebruiker. ClaimEquals geeft aan dat de acties moeten worden uitgevoerd als de opgegeven claim bestaat en de waarde gelijk is aan de opgegeven waarde.
ExecuteActionsIf Ja Geeft aan of de acties in de voorwaarde moeten worden uitgevoerd als de test waar of onwaar is.

Het element Voorwaarde bevat de volgende elementen:

Element Instanties Beschrijving
Value 1:n De gegevens die door de controle worden gebruikt. Als het type van deze controle is ClaimsExist, geeft dit veld een ClaimTypeReferenceId op waarvoor een query moet worden uitgevoerd. Als het type controle is ClaimEquals, geeft dit veld een ClaimTypeReferenceId op om een query op uit te voeren. Geef de waarde op die moet worden ingecheckt in een ander waardeelement.
Action 1:1 De actie die moet worden uitgevoerd als de voorwaardecontrole binnen een indelingsstap waar is. De waarde van de actie is ingesteld op SkipThisValidationTechnicalProfile, waarmee wordt aangegeven dat het bijbehorende technische validatieprofiel niet mag worden uitgevoerd.

In het volgende voorbeeld wordt het e-mailadres verzonden en geverifieerd met behulp van het technische profiel van Microsoft Entra ID SSPR.

<DisplayControl Id="emailVerificationControl" UserInterfaceControlType="VerificationControl">
  <InputClaims></InputClaims>
  <DisplayClaims>
    <DisplayClaim ClaimTypeReferenceId="email" Required="true" />
    <DisplayClaim ClaimTypeReferenceId="verificationCode" ControlClaimType="VerificationCode" Required="true" />
  </DisplayClaims>
  <OutputClaims></OutputClaims>
  <Actions>
    <Action Id="SendCode">
      <ValidationClaimsExchange>
        <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="AadSspr-SendCode" />
      </ValidationClaimsExchange>
    </Action>
    <Action Id="VerifyCode">
      <ValidationClaimsExchange>
        <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="AadSspr-VerifyCode" />
      </ValidationClaimsExchange>
    </Action>
  </Actions>
</DisplayControl>

In het volgende voorbeeld wordt een code via e-mail of sms verzonden op basis van de selectie van de mfaType-claim met voorwaarden van de gebruiker.

<Action Id="SendCode">
  <ValidationClaimsExchange>
    <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="AzureMfa-SendSms">
      <Preconditions>
        <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
          <Value>mfaType</Value>
          <Value>email</Value>
          <Action>SkipThisValidationTechnicalProfile</Action>
        </Precondition>
      </Preconditions>
    </ValidationClaimsExchangeTechnicalProfile>
    <ValidationClaimsExchangeTechnicalProfile TechnicalProfileReferenceId="AadSspr-SendEmail">
      <Preconditions>
        <Precondition Type="ClaimEquals" ExecuteActionsIf="true">
          <Value>mfaType</Value>
          <Value>phone</Value>
          <Action>SkipThisValidationTechnicalProfile</Action>
        </Precondition>
      </Preconditions>
    </ValidationClaimsExchangeTechnicalProfile>
  </ValidationClaimsExchange>
</Action>

Weergavebesturingselementen waarnaar wordt verwezen

Er wordt naar weergavebesturingselementen verwezen in de weergaveclaims van het zelf-asserted technische profiel.

Voorbeeld:

<TechnicalProfile Id="SelfAsserted-ProfileUpdate">
  ...
  <DisplayClaims>
    <DisplayClaim DisplayControlReferenceId="emailVerificationControl" />
    <DisplayClaim DisplayControlReferenceId="PhoneVerificationControl" />
    <DisplayClaim ClaimTypeReferenceId="displayName" Required="true" />
    <DisplayClaim ClaimTypeReferenceId="givenName" Required="true" />
    <DisplayClaim ClaimTypeReferenceId="surName" Required="true" />

Volgende stappen

Zie voor voorbeelden van het gebruik van weergavebeheer: