Transformações de afirmações StringCollection

Este artigo fornece exemplos para utilizar as transformações de afirmações de coleção de cadeias do esquema do Identity Experience Framework no Azure Active Directory B2C (Azure AD B2C). Para obter mais informações, veja transformações de afirmações.

AddItemToStringCollection

Adiciona uma afirmação de cadeia a uma nova afirmação stringCollection de valores exclusivos. Veja a Demonstração em direto desta transformação de afirmações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim Elemento string O ClaimType a ser adicionado à afirmação de saída.
InputClaim coleção stringCollection A coleção de cadeias a adicionar à afirmação de saída. Se a coleção contiver itens, a transformação de afirmações copia os itens e adiciona o item ao final da afirmação da coleção de saída.
OutputClaim coleção stringCollection O ClaimType que é produzido após esta transformação de afirmações ter sido invocada, com o valor especificado na afirmação de entrada.

Utilize esta transformação de afirmações para adicionar uma cadeia a uma cadeia de carateres nova ou existenteCollection. É frequentemente utilizado num perfil técnico AAD-UserWriteUsingAlternativeSecurityId . Antes de criar uma nova conta de rede social, a transformação de afirmações CreateOtherMailsFromEmail lê o ClaimType e adiciona o valor ao outro Tipo de Afirmação de Correio .

Exemplo de AddItemToStringCollection

A seguinte transformação de afirmações adiciona o claimType de e-mail a outro Tipo de Afirmação de Correio .

<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>
  • Afirmações de entrada:
    • coleção: ["someone@outlook.com"]
    • item: "admin@contoso.com"
  • Afirmações de saída:
    • coleção: ["someone@outlook.com", "admin@contoso.com"]

AddParameterToStringCollection

Adiciona um parâmetro de cadeia a uma nova afirmação stringCollection de valores exclusivos. Veja a Demonstração em direto desta transformação de afirmações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim coleção stringCollection A coleção de cadeias a adicionar à afirmação de saída. Se a coleção contiver itens, a transformação de afirmações copia os itens e adiciona o item ao final da afirmação da coleção de saída.
InputParameter Elemento string O valor a adicionar à afirmação de saída.
OutputClaim coleção stringCollection O ClaimType que é produzido após esta transformação de afirmações ter sido invocada, com o valor especificado no parâmetro de entrada.

Exemplo de AddParameterToStringCollection

O exemplo seguinte adiciona um endereço de e-mail constante (admin@contoso.com) à outra afirmaçãomails .

<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>
  • Afirmações de entrada:
    • coleção: ["someone@outlook.com"]
  • Parâmetros de entrada
    • item: "admin@contoso.com"
  • Afirmações de saída:
    • coleção: ["someone@outlook.com", "admin@contoso.com"]

GetSingleItemFromStringCollection

Obtém o primeiro item da coleção de cadeias fornecida. Veja a Demonstração em direto desta transformação de afirmações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim coleção stringCollection Os ClaimTypes que são utilizados pela transformação de afirmações para obter o item.
OutputClaim extractedItem string Os ClaimTypes que são produzidos após esta ClaimsTransformation ter sido invocada. O primeiro item na coleção.

Exemplo de GetSingleItemFromStringCollection

O exemplo seguinte lê a afirmação otherMails e devolve o primeiro item na afirmação de e-mail .

<ClaimsTransformation Id="CreateEmailFromOtherMails" TransformationMethod="GetSingleItemFromStringCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedItem" />
  </OutputClaims>
</ClaimsTransformation>
  • Afirmações de entrada:
    • coleção: ["someone@outlook.com", "someone@contoso.com"]
  • Afirmações de saída:
    • extractedItem: "someone@outlook.com"

StringCollectionContains

Verifica se um tipo de afirmação StringCollection contém um elemento. Veja a Demonstração em direto desta transformação de afirmações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim inputClaim stringCollection A afirmação a ser pesquisada.
InputParameter item string O valor a procurar.
InputParameter ignoreCase string Especifica se esta comparação deve ignorar o caso das cadeias que estão a ser comparadas.
OutputClaim outputClaim boolean O ClaimType que é produzido após esta ClaimsTransformation ter sido invocada. Um indicador booleano se a coleção contiver essa cadeia

Exemplo de StringCollectionContains

O exemplo seguinte verifica se o roles tipo de afirmação stringCollection contém o valor de administrador.

<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>
  • Afirmações de entrada:
    • inputClaim: ["reader", "author", "admin"]
  • Parâmetros de entrada:
    • item: "Administração"
    • ignoreCase: "true"
  • Afirmações de saída:
    • outputClaim: "true"

StringCollectionContainsClaim

Verifica se um tipo de afirmação StringCollection contém um valor de afirmação. Veja a Demonstração em direto desta transformação de afirmações.

Elemento TransformationClaimType Tipo de Dados Notas
InputClaim coleção stringCollection A afirmação a ser pesquisada.
InputClaim item string O tipo de afirmação que contém o valor a procurar.
InputParameter ignoreCase string Especifica se esta comparação deve ignorar o caso das cadeias que estão a ser comparadas.
OutputClaim outputClaim boolean O ClaimType que é produzido após esta ClaimsTransformation ter sido invocada. Um indicador booleano se a coleção contiver essa cadeia

Exemplo de StringCollectionContainsClaim

O exemplo seguinte verifica se o roles tipo de afirmação stringCollection contém o valor do tipo de role afirmação.

<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> 
  • Afirmações de entrada:
    • coleção: ["reader", "author", "admin"]
    • item: "Administração"
  • Parâmetros de entrada:
    • ignoreCase: "true"
  • Afirmações de saída:
    • outputClaim: "true"

Passos seguintes