Transformace deklarací identity StringCollection

Tento článek obsahuje příklady použití transformací deklarací identit rozhraní Identity Experience Framework v Azure Active Directory B2C (Azure AD B2C). Další informace najdete v tématu Transformace deklarací identity.

AddItemToStringCollection

Přidá deklaraci identity řetězce do nové jedinečné hodnoty stringCollection deklarace identity. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace položka řetězec Deklarace IdentityType, která se má přidat do výstupní deklarace identity.
Vstupní deklarace kolekce Kolekce řetězců Kolekce řetězců, která se má přidat do výstupní deklarace identity. Pokud kolekce obsahuje položky, transformace deklarací identity zkopíruje položky a přidá položku na konec deklarace identity výstupní kolekce.
Výstupní deklarace kolekce Kolekce řetězců Deklarace IdentityType, která se vytvoří po vyvolání této transformace deklarací identity s hodnotou zadanou ve vstupní deklaraci identity.

Tuto transformaci deklarací identity použijte k přidání řetězce do nové nebo existující třídy stringCollection. Běžně se používá v technickém profilu AAD-UserWriteUsingAlternativeSecurityId . Než se vytvoří nový sociální účet, CreateOtherMailsFromEmail deklarace identity přečte ClaimType a přidá hodnotu do jinéMails ClaimType.

Příklad AddItemToStringCollection

Následující transformace deklarací identity přidá deklarací IdentityType e-mailu do jiného typu ClaimType.

<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>
  • Vstupní deklarace identity:
    • kolekce: ["someone@outlook.com"]
    • item: "admin@contoso.com"
  • Výstupní deklarace identity:
    • collection: [""someone@outlook.com, "admin@contoso.com"]

AddParameterToStringCollection

Přidá parametr řetězce do nové jedinečné hodnoty stringCollection deklarace identity. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace kolekce Kolekce řetězců Kolekce řetězců, která se má přidat do výstupní deklarace identity. Pokud kolekce obsahuje položky, transformace deklarací identity zkopíruje položky a přidá položku na konec deklarace identity výstupní kolekce.
VstupníParametr položka řetězec Hodnota, která se má přidat do výstupní deklarace identity.
Výstupní deklarace kolekce Kolekce řetězců Deklarace IdentityType, která se vytvoří po vyvolání této transformace deklarací identity s hodnotou zadanou ve vstupním parametru.

Příklad AddParameterToStringCollection

Následující příklad přidá konstantní e-mailovou adresu (admin@contoso.com) do jiné deklarace identityMails .

<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>
  • Vstupní deklarace identity:
    • kolekce: ["someone@outlook.com"]
  • Vstupní parametry
    • item: "admin@contoso.com"
  • Výstupní deklarace identity:
    • collection: [""someone@outlook.com, "admin@contoso.com"]

GetSingleItemFromStringCollection

Získá první položku z poskytnuté kolekce řetězců. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace kolekce Kolekce řetězců Deklarace IdentityTypes, které jsou používány transformací deklarací k získání položky.
Výstupní deklarace extractedItem řetězec Deklarace IdentityTypes, které jsou vytvořeny po vyvolání této DeklaraceTransformation. První položka v kolekci.

Příklad GetSingleItemFromStringCollection

Následující příklad přečte druhou deklaraci identityMails a vrátí první položku do deklarace identity e-mailu .

<ClaimsTransformation Id="CreateEmailFromOtherMails" TransformationMethod="GetSingleItemFromStringCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedItem" />
  </OutputClaims>
</ClaimsTransformation>
  • Vstupní deklarace identity:
    • collection: [""someone@outlook.com, "someone@contoso.com"]
  • Výstupní deklarace identity:
    • extractedItem: "someone@outlook.com"

StringCollectionContains

Zkontroluje, jestli typ deklarace identity StringCollection obsahuje prvek. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace Požadavek vstupu Kolekce řetězců Deklarace identity, která má být prohledána.
VstupníParametr položka řetězec Hodnota, kterou chcete vyhledat.
VstupníParametr ignorovat případ řetězec Určuje, jestli by toto porovnání mělo ignorovat velikost porovnávaných řetězců.
Výstupní deklarace Deklarace výstupu Boolean Deklarace IdentityType, která se vytvoří po vyvolání této deklarace IdentityTransformation. Logický indikátor, pokud kolekce obsahuje takový řetězec

Příklad StringCollectionContains

Následující příklad zkontroluje, zda roles stringCollection typ deklarace obsahuje hodnotu admin.

<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>
  • Vstupní deklarace identity:
    • inputClaim: ["reader", "author", "admin"]
  • Vstupní parametry:
    • item: "Admin"
    • ignoreCase: "true"
  • Výstupní deklarace identity:
    • outputClaim: "true"

StringCollectionContainsClaim

Zkontroluje, jestli typ deklarace identity StringCollection obsahuje hodnotu deklarace identity. Podívejte se na živou ukázku této transformace deklarací identity.

prvek TransformaceClaimType Datový typ Poznámky
Vstupní deklarace kolekce Kolekce řetězců Deklarace identity, která má být prohledána.
Vstupní deklarace položka řetězec Typ deklarace identity, který obsahuje hodnotu, kterou chcete vyhledat.
VstupníParametr ignorovat případ řetězec Určuje, jestli by toto porovnání mělo ignorovat velikost porovnávaných řetězců.
Výstupní deklarace Deklarace výstupu Boolean Deklarace IdentityType, která se vytvoří po vyvolání této deklarace IdentityTransformation. Logický indikátor, pokud kolekce obsahuje takový řetězec

Příklad StringCollectionContainsClaim

Následující příklad zkontroluje, zda roles stringCollection typ deklarace obsahuje hodnotu role typu deklarace identity.

<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> 
  • Vstupní deklarace identity:
    • collection: ["reader", "author", "admin"]
    • item: "Admin"
  • Vstupní parametry:
    • ignoreCase: "true"
  • Výstupní deklarace identity:
    • outputClaim: "true"

Další kroky

  • Další ukázky transformace deklarací identity najdete v úložišti GitHub komunity Azure AD B2C.