Azure AD B2C'de telefon numarası talep dönüştürmelerini tanımlama

Bu makalede, Azure Active Directory B2C (Azure AD B2C) özel ilkesinde telefon numarası talep dönüştürmelerini kullanmaya yönelik başvurular ve örnekler sağlanır. Genel olarak talep dönüştürmeleri hakkında daha fazla bilgi için bkz . ClaimsTransformations.

Not

Bu özellik genel önizleme aşamasındadır.

ConvertPhoneNumberClaimToString

Bir phoneNumber veri türünü veri türüne string dönüştürür. Bu talep dönüşümünün Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notlar
InputClaim Phonenumber Phonenumber Dizeye dönüştürme talebi.
OutputClaim phoneNumberString string Bu talep dönüşümü çağrıldıktan sonra oluşturulan talep.

ConvertPhoneNumberClaimToString Örneği

Bu örnekte, değer türüne phoneNumber sahip cellPhoneNumber talebi, değeri olan bir cellPhone talebine stringdönüştürülür.

<ClaimsTransformation Id="PhoneNumberToString" TransformationMethod="ConvertPhoneNumberClaimToString">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="cellPhoneNumber" TransformationClaimType="phoneNumber" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="cellPhone" TransformationClaimType="phoneNumberString" />
  </OutputClaims>
</ClaimsTransformation>
  • Giriş talepleri:
    • phoneNumber: +11234567890 (phoneNumber)
  • Çıkış talepleri:
    • phoneNumberString: +11234567890 (dize)

ConvertStringToPhoneNumberClaim

Telefon numarasının biçimini doğrular. Geçerliyse, Azure AD B2C tarafından kullanılan standart bir biçimle değiştirin. Sağlanan telefon numarası geçerli bir biçimde değilse bir hata iletisi döndürülür. Bu talep dönüşümünün Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notlar
InputClaim phoneNumberString string Telefon numarası için dize talebi. Telefon numarası, önde gelen bir "+" ve ülke/bölge koduyla birlikte uluslararası biçimde olmalıdır. Giriş talebi country sağlanırsa, telefon numarası yerel biçimdedir (ülke/bölge kodu olmadan).
InputClaim ülke string [İsteğe bağlı] ISO3166 biçimindeki telefon numarasının ülke/bölge kodu için dize talebi (iki harfli ISO-3166 ülke/bölge kodu).
OutputClaim outputClaim Phonenumber Bu talep dönüştürme işleminin sonucu.

ConvertStringToPhoneNumberClaim talep dönüşümü her zaman kendi kendini onaylayanbir teknik profil veya görüntü denetimi tarafından çağrılan bir doğrulama teknik profilinden yürütülür. UserMessageIfClaimsTransformationInvalidPhoneNumber kendi kendine onaylanan teknik profil meta verileri, kullanıcıya sunulan hata iletisini denetler.

Hata iletisi yürütme yolunun diyagramı

ConvertStringToPhoneNumberClaim Örneği

Aşağıdaki örnek, phoneString talebi gerçekten geçerli bir telefon numarası olup olmadığını denetler ve ardından standart Azure AD B2C biçiminde telefon numarasını döndürür. Aksi takdirde bir hata iletisi oluşturulur.

<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>
  • Giriş talepleri:
    • phoneNumberString: 033 456-7890
    • ülke: DK
  • Çıkış talepleri:
    • outputClaim: +450334567890

Ülke kodu talebi olmadan ConvertStringToPhoneNumberClaim örneği

Talep dönüştürmenin bu modunun Canlı tanıtımını gözden geçirin.

  • Giriş talepleri:
    • phoneNumberString: +1 (123) 456-7890
  • Çıkış talepleri:
    • outputClaim: +11234567890

ConvertStringToPhoneNumberClaim talep dönüştürmesini çağırma

Bu talep dönüştürmesini içeren doğrulama teknik profilini çağıran kendi kendini onaylayan teknik profil hata iletisini tanımlayabilir.

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

GetNationalNumberAndCountryCodeFromPhoneNumberString

Giriş taleplerinden ülke/bölge kodunu ve ulusal numarayı ayıklar ve sağlanan telefon numarası geçerli değilse isteğe bağlı olarak bir özel durum oluşturur. Bu talep dönüşümünün Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notlar
InputClaim Phonenumber string Telefon numarasının dize talebi. Telefon numarası, önde gelen bir "+" ve ülke/bölge koduyla birlikte uluslararası biçimde olmalıdır.
Inputparameter throwExceptionOnFailure boolean [İsteğe bağlı] Telefon numarası geçerli olmadığında özel durum oluşturup oluşturmadığını gösteren parametre. Varsayılan değer false'tur.
Inputparameter countryCodeType string [İsteğe bağlı] Çıkış talebindeki ülke/bölge kodunun türünü gösteren parametre. Kullanılabilir değerler : CallingCode (ülke/bölge için uluslararası çağrı kodu, örneğin +1) veya ISO3166 (iki harfli ISO-3166 ülke/bölge kodu).
OutputClaim nationalNumber string Telefon numarasının ulusal numarası için dize talebi.
OutputClaim countryCode string Telefon numarasının ülke/bölge kodu için dize talebi.

GetNationalNumberAndCountryCodeFromPhoneNumberString talep dönüştürme işlemi, kendi kendini onaylayan bir teknik profil veya bir görüntüleme denetimi eylemi tarafından çağrılan bir doğrulama teknik profilinden yürütülürse UserMessageIfPhoneNumberParseFailure kendi kendini onaylayan teknik profil meta verileri kullanıcıya sunulan hata iletisini denetler.

Hata iletisi yürütme yolunun diyagramı

Tam telefon numarasını ülke/bölge koduna ve ulusal numaraya bölmek için bu talep dönüştürmesini kullanabilirsiniz. Sağlanan telefon numarası geçerli değilse hata iletisi göndermeyi seçebilirsiniz.

GetNationalNumberAndCountryCodeFromPhoneNumberString Örneği

Aşağıdaki örnek, telefon numarasını ulusal numaraya ve ülke/bölge koduna bölmeye çalışır. Telefon numarası geçerliyse, telefon numarası ulusal numara tarafından geçersiz kılınacaktır. Telefon numarası geçerli değilse, özel durum oluşturulmayacak ve telefon numarasının özgün değeri hala var.

<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>
  • Giriş talepleri:
    • phoneNumber: +49 (123) 456-7890
  • Giriş parametreleri:
    • throwExceptionOnFailure: false
    • countryCodeType: ISO3166
  • Çıkış talepleri:
    • nationalNumber: 1234567890
    • countryCode: DE

CallingCode parametresiyle GetNationalNumberAndCountryCodeFromPhoneNumberString örneği

Aşağıdaki örnek, telefon numarasını ulusal numaraya ve ülke arama koduna bölmeyi dener.

<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>
  • Giriş talepleri:
    • phoneNumber: +49 (123) 456-7890
  • Giriş parametreleri
    • throwExceptionOnFailure: false
    • countryCodeType: CallingCode
  • Çıkış talepleri:
    • nationalNumber: 1234567890
    • countryCode: +49

GetNationalNumberAndCountryCodeFromPhoneNumberString talep dönüştürmesini çağırma

Bu talep dönüştürmesini içeren doğrulama teknik profilini çağıran kendi kendini onaylayan teknik profil, hata iletisini tanımlayabilir.

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

Sonraki adımlar