Aracılığıyla paylaş


StringCollection talep dönüştürmeleri

Bu makalede, Azure Active Directory B2C'de (Azure AD B2C) Kimlik Deneyimi Çerçevesi şemasının dize koleksiyonu talep dönüştürmelerini kullanma örnekleri sağlanır. Daha fazla bilgi için bkz . talep dönüştürmeleri.

AddItemToStringCollection

Yeni benzersiz değerler stringCollection talebine bir dize talebi ekler. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notes
Giriş İddiası öğe String Çıkış talebine eklenecek ClaimType.
Giriş İddiası koleksiyonu dize koleksiyonu Çıkış talebine eklenecek dize koleksiyonu. Koleksiyon öğeleri içeriyorsa, talep dönüştürmesi öğeleri kopyalar ve öğeyi çıkış koleksiyonu talebi sonuna ekler.
Çıktı İddiası koleksiyonu dize koleksiyonu Bu talep dönüştürmesi çağrıldıktan sonra oluşturulan ClaimType, giriş talepinde belirtilen değerle.

Yeni veya var olan bir stringCollection'a dize eklemek için bu talep dönüştürmesini kullanın. Genellikle AAD-UserWriteUsingAlternativeSecurityId teknik profilinde kullanılır. Yeni bir sosyal hesap oluşturulmadan önce CreateOtherMailsFromEmail talep dönüştürme işlemi ClaimType değerini okur ve değeri otherMails ClaimType'a ekler.

AddItemToStringCollection Örneği

Aşağıdaki talep dönüştürmesi, ClaimType e-postasınıdiğerMailler ClaimType'a ekler.

<ClaimsTransformation Id="CreateOtherMailsFromEmail" TransformationMethod="AddItemToStringCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="item" />
    <InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </OutputClaims>
</ClaimsTransformation>
  • Giriş talepleri:
    • collection: ["someone@outlook.com"]
    • öğe: "admin@contoso.com"
  • Çıkış talepleri:
    • collection: [""someone@outlook.com, "admin@contoso.com"]

AddParameterToStringCollection

Yeni benzersiz değerler stringCollection talebine bir dize parametresi ekler. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notes
Giriş İddiası koleksiyonu dize koleksiyonu Çıkış talebine eklenecek dize koleksiyonu. Koleksiyon öğeleri içeriyorsa, talep dönüştürmesi öğeleri kopyalar ve öğeyi çıkış koleksiyonu talebi sonuna ekler.
Girdi Parametresi öğe String Çıkış talebine eklenecek değer.
Çıktı İddiası koleksiyonu dize koleksiyonu Giriş parametresinde belirtilen değerle, bu talep dönüştürmesi çağrıldıktan sonra oluşturulan ClaimType.

AddParameterToStringCollection Örneği

Aşağıdaki örnek, diğer Postalar talebine sabit bir e-posta adresi (admin@contoso.com) ekler.

<ClaimsTransformation Id="SetCompanyEmail" TransformationMethod="AddParameterToStringCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="item" DataType="string" Value="admin@contoso.com" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </OutputClaims>
</ClaimsTransformation>
  • Giriş talepleri:
    • collection: ["someone@outlook.com"]
  • Giriş parametreleri
    • öğe: "admin@contoso.com"
  • Çıkış talepleri:
    • collection: [""someone@outlook.com, "admin@contoso.com"]

GetSingleItemFromStringCollection

Sağlanan dize koleksiyonundan ilk öğeyi alır. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notes
Giriş İddiası koleksiyonu dize koleksiyonu Öğeyi almak için talep dönüştürmesi tarafından kullanılan ClaimTypes.
Çıktı İddiası extractedItem String Bu ClaimsTransformation çağrıldıktan sonra oluşturulan ClaimTypes. Koleksiyondaki ilk öğe.

GetSingleItemFromStringCollection Örneği

Aşağıdaki örnek , otherMails talebi okur ve ilk öğeyi e-posta talebine döndürür.

<ClaimsTransformation Id="CreateEmailFromOtherMails" TransformationMethod="GetSingleItemFromStringCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedItem" />
  </OutputClaims>
</ClaimsTransformation>
  • Giriş talepleri:
    • collection: [""someone@outlook.com, "someone@contoso.com"]
  • Çıkış talepleri:
    • extractedItem: "someone@outlook.com"

StringCollectionContains

StringCollection talep türünün bir öğe içerip içermediğini denetler. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notes
Giriş İddiası inputClaim dize koleksiyonu Aranacak talep.
Girdi Parametresi öğe String Aranacak değer.
Girdi Parametresi ignoreCase String Bu karşılaştırmanın karşılaştırılan dizelerin büyük/küçük harf durumunu yoksayıp yoksaymayacağını belirtir.
Çıktı İddiası outputClaim Boolean Bu ClaimsTransformation çağrıldıktan sonra oluşturulan ClaimType. Koleksiyon böyle bir dize içeriyorsa boole göstergesi

StringCollectionContains Örneği

Aşağıdaki örnek stringCollection talep türünün admin değerini içerip içermediğini roles denetler.

<ClaimsTransformation Id="IsAdmin" TransformationMethod="StringCollectionContains">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="roles" TransformationClaimType="inputClaim"/>
  </InputClaims>
  <InputParameters>
    <InputParameter  Id="item" DataType="string" Value="Admin"/>
    <InputParameter  Id="ignoreCase" DataType="string" Value="true"/>
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="isAdmin" TransformationClaimType="outputClaim"/>
  </OutputClaims>
</ClaimsTransformation>
  • Giriş talepleri:
    • inputClaim: ["reader", "author", "admin"]
  • Giriş parametreleri:
    • öğe: "Yönetici"
    • ignoreCase: "true"
  • Çıkış talepleri:
    • outputClaim: "true"

StringCollectionContainsClaim

StringCollection talep türünün bir talep değeri içerip içermediğini denetler. Bu talep dönüştürme işleminin Canlı tanıtımını gözden geçirin.

Öğe TransformationClaimType Veri Türü Notes
Giriş İddiası koleksiyonu dize koleksiyonu Aranacak talep.
Giriş İddiası öğe String Aranacak değeri içeren talep türü.
Girdi Parametresi ignoreCase String Bu karşılaştırmanın karşılaştırılan dizelerin büyük/küçük harf durumunu yoksayıp yoksaymayacağını belirtir.
Çıktı İddiası outputClaim Boolean Bu ClaimsTransformation çağrıldıktan sonra oluşturulan ClaimType. Koleksiyon böyle bir dize içeriyorsa boole göstergesi

StringCollectionContainsClaim Örneği

Aşağıdaki örnek stringCollection talep türünün talep türünün değerini role içerip içermediğini roles denetler.

<ClaimsTransformation Id="HasRequiredRole" TransformationMethod="StringCollectionContainsClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="roles" TransformationClaimType="collection" />
    <InputClaim ClaimTypeReferenceId="role" TransformationClaimType="item" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="ignoreCase" DataType="string" Value="true" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="hasAccess" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation> 
  • Giriş talepleri:
    • collection: ["reader", "author", "admin"]
    • öğe: "Yönetici"
  • Giriş parametreleri:
    • ignoreCase: "true"
  • Çıkış talepleri:
    • outputClaim: "true"

Sonraki Adımlar