Delen via


De transformaties van telefoonnummerclaims definiëren in Azure AD B2C

Dit artikel bevat de naslaginformatie en voorbeelden voor het gebruik van de transformaties van telefoonnummerclaims in aangepast beleid van Azure Active Directory B2C (Azure AD B2C). Raadpleeg ClaimsTransformations voor meer informatie over claimtransformaties in het algemeen.

Notitie

Deze functie is beschikbaar voor openbare preview.

ConvertPhoneNumberClaimToString

Converteert een gegevenstype phoneNumber naar een gegevenstype string. Bekijk livedemo van deze claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim phoneNumber phoneNumber De claim die u moet converteren naar een tekenreeks.
OutputClaim phoneNumberString tekenreeks Claim die wordt geproduceerd nadat deze claimtransformatie is aangeroepen.

Een voorbeeld van ConvertPhoneNumberClaimToString

In dit voorbeeld wordt de claim cellPhoneNumber met een waardetype phoneNumber geconverteerd naar een cellPhone-claim met waardetype .string

<ClaimsTransformation Id="PhoneNumberToString" TransformationMethod="ConvertPhoneNumberClaimToString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="cellPhoneNumber" TransformationClaimType="phoneNumber" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="cellPhone" TransformationClaimType="phoneNumberString" />
  </OutputClaims>
</ClaimsTransformation>
  • De invoerclaims:
    • phoneNumber: +11234567890 (phoneNumber)
  • De uitvoerclaims:
    • phoneNumberString: +11234567890 (string)

ConvertStringToPhoneNumberClaim

Valideert notatie van een telefoonnummer. Indien geldig, wijzigt u die in een standaardindeling die wordt gebruikt door Azure AD B2C. Als het opgegeven telefoonnummer niet geldig is, dan wordt er een foutbericht geretourneerd. Bekijk de Livedemo van deze claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim phoneNumberString tekenreeks Tekenreeksclaim voor het telefoonnummer. Het telefoonnummer moet een internationale indeling hebben, compleet met voorloopcode '+' en land-/regiocode. Als de invoerclaim country is opgegeven, heeft het telefoonnummer de lokale notatie (zonder land-/regiocode).
InputClaim country tekenreeks [Optioneel] De tekenreeksclaim voor de land-/regiocode van telefoonnummer in ISO3166-indeling (de ISO-3166-land-/regiocode met twee letters).
OutputClaim outputClaim phoneNumber Het resultaat van de claimtransformatie.

De claimtransformatie ConvertStringToPhoneNumberClaim wordt altijd uitgevoerd vanuit een technisch validatieprofiel dat wordt aangeroepen door een zelf-gecontroleerd technisch profiel of DisplayControl. De metagegevens van het self-asserted technical profileNumber UserMessageIfClaimsTransformationInvalidPhoneNumber bepalen het foutbericht dat aan de gebruiker wordt weergegeven.

Diagram van de uitvoerbewerking van het foutbericht

Voorbeeld van ConvertStringToPhoneNumberClaim

In het volgende voorbeeld wordt gecontroleerd of de phoneString-claim daadwerkelijk een geldig telefoonnummer is en vervolgens het telefoonnummer in de standaardnotatie Azure AD B2C retourneert. Anders wordt een foutbericht gegenereerd.

<ClaimsTransformation Id="ConvertStringToPhoneNumber" TransformationMethod="ConvertStringToPhoneNumberClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="phoneString" TransformationClaimType="phoneNumberString" />
    <InputClaim ClaimTypeReferenceId="countryCode" TransformationClaimType="country" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • De invoerclaims:
    • phoneNumberString: 033 456-7890
    • land: DK
  • De uitvoerclaims:
    • outputClaim: +450334567890

Een voorbeeld van ConvertStringToPhoneNumberClaim zonder landcodeclaim

Bekijk de Livedemo van deze modus van de claimtransformatie.

  • De invoerclaims:
    • phoneNumberString: +1 (123) 456-7890
  • De uitvoerclaims:
    • outputClaim: +11234567890

Transformatie van claims ConvertStringToPhoneNumberClaim aanroepen

Het zelfbewuste technische profiel dat het technische validatieprofiel aanroept met deze claimtransformatie, kan het foutbericht definiëren.

<TechnicalProfile Id="SelfAsserted-LocalAccountSignUp-Phone">
  <Metadata>
    <Item Key="UserMessageIfClaimsTransformationInvalidPhoneNumber">Custom error message if the phone number is not valid.</Item>
  </Metadata>
  ...
</TechnicalProfile>

GetNationalNumberAndCountryCodeFromPhoneNumberString

Haalt de land-/regiocode en het nationale nummer op uit de invoerclaim en genereert indien nodig een uitzondering als het opgegeven telefoonnummer niet geldig is. Bekijk de Livedemo van de claimtransformatie.

Element TransformationClaimType Gegevenstype Notities
InputClaim phoneNumber tekenreeks Tekenreeksclaim van het telefoonnummer. Het telefoonnummer moet een internationale indeling hebben, compleet met voorloopcode '+' en land-/regiocode.
InputParameter throwExceptionOnFailure booleaans [Optioneel] Een parameter die aangeeft of er een uitzondering wordt gegenereerd als het telefoonnummer niet geldig is. De standaardwaarde is false.
InputParameter countryCodeType tekenreeks [Optioneel] Een parameter die het type land-/regiocode in uitvoerclaim aangeeft. Beschikbare waarden zijn CallingCode (internationale belcode voor een land/regio, bijvoorbeeld +1) of ISO3166 (de iso-3166-code van twee letters).
OutputClaim nationalNumber tekenreeks De tekenreeksclaim voor het nationale nummer van telefoonnummer.
OutputClaim countryCode tekenreeks De tekenreeksclaim voor land-/regiocode van het telefoonnummer.

Als de getNationalNumberAndCountryCodeFromPhoneNumberString-claimtransformatie wordt uitgevoerd vanuit een validatie technisch profiel dat wordt aangeroepen door een zelf-asserted technisch profiel of een actie voor weergavebeheer, bepaalt de userMessageIfPhoneNumberParseFailure zelfbetrouwbare technische profielmetagegevens het foutbericht dat aan de gebruiker wordt gepresenteerd.

Diagram van de uitvoerbewerking van het foutbericht

U kunt deze claimtransformatie gebruiken om een volledig telefoonnummer te splitsen in land-/regiocode en het nationale nummer. Als het opgegeven telefoonnummer niet geldig is, dan kunt u ervoor kiezen om een foutbericht te verzenden.

Voorbeeld van GetNationalNumberAndCountryCodeFromPhoneNumberString

In het volgende voorbeeld wordt geprobeerd het telefoonnummer te splitsen in het nationale nummer en land-/regiocode. Als het telefoonnummer geldig is, dan wordt het telefoonnummer overschreven door het nationale nummer. Als het telefoonnummer niet geldig is, dan wordt er geen uitzondering gegenereerd en heeft het telefoonnummer nog steeds de oorspronkelijke waarde.

<ClaimsTransformation Id="GetNationalNumberAndCountryCodeFromPhoneNumberString" TransformationMethod="GetNationalNumberAndCountryCodeFromPhoneNumberString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="phoneNumber" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="throwExceptionOnFailure" DataType="boolean" Value="false" />
    <InputParameter Id="countryCodeType" DataType="string" Value="ISO3166" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="nationalNumber" TransformationClaimType="nationalNumber" />
    <OutputClaim ClaimTypeReferenceId="countryCode" TransformationClaimType="countryCode" />
  </OutputClaims>
</ClaimsTransformation>
  • De invoerclaims:
    • phoneNumber: +49 (123) 456-7890
  • De invoerparameters:
    • throwExceptionOnFailure: false
    • countryCodeType: ISO3166
  • De uitvoerclaims:
    • nationalNumber: 1234567890
    • countryCode: DE

Voorbeeld van GetNationalNumberAndCountryCodeFromPhoneNumberString met CallingCode-parameter

In het volgende voorbeeld wordt geprobeerd om het telefoonnummer te splitsen in het nationale nummer en land-/belcode.

<ClaimsTransformation Id="GetNationalNumberAndCountryCodeFromPhoneNumberString" TransformationMethod="GetNationalNumberAndCountryCodeFromPhoneNumberString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="phoneNumber" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="throwExceptionOnFailure" DataType="boolean" Value="false" />
    <InputParameter Id="countryCodeType" DataType="string" Value="CallingCode" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="nationalNumber" TransformationClaimType="nationalNumber" />
    <OutputClaim ClaimTypeReferenceId="countryCode" TransformationClaimType="countryCode" />
  </OutputClaims>
</ClaimsTransformation>
  • De invoerclaims:
    • phoneNumber: +49 (123) 456-7890
  • De invoerparameters
    • throwExceptionOnFailure: false
    • countryCodeType: CallingCode
  • De uitvoerclaims:
    • nationalNumber: 1234567890
    • countryCode: +49

De getNationalNumberAndCountryCodeFromPhoneNumberString-claimstransformatie aanroepen

Het zelfbewuste technische profiel dat het technische validatieprofiel aanroept met deze claimtransformatie, kan het foutbericht definiëren.

<TechnicalProfile Id="SelfAsserted-LocalAccountSignup-Phone">
  <Metadata>
    <Item Key="UserMessageIfPhoneNumberParseFailure">Custom error message if the phone number is not valid.</Item>
  </Metadata>
  ...
</TechnicalProfile>

Volgende stappen