Partilhar via


Transformações de declarações StringCollection

Este artigo fornece exemplos para usar as transformações de declarações de coleção de cadeia de caracteres do esquema do Identity Experience Framework no Azure Ative Directory B2C (Azure AD B2C). Para obter mais informações, consulte Transformações de declarações.

AddItemToStringCollection

Adiciona uma declaração de cadeia de caracteres a uma nova declaração stringCollection de valores exclusivos. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de dados Observações
InputClaim item cadeia (de caracteres) O ClaimType a ser adicionado à declaração de saída.
InputClaim coleção stringCollection A coleção de cadeia de caracteres a ser adicionada à declaração de saída. Se a coleção contiver itens, a transformação de declarações copiará os itens e adicionará o item ao final da declaração de coleta de saída.
OutputClaim coleção stringCollection O ClaimType que é produzido após essa transformação de declarações ter sido invocada, com o valor especificado na declaração de entrada.

Use essa transformação de declarações para adicionar uma cadeia de caracteres a uma stringCollection nova ou existente. É comumente usado em um perfil técnico AAD-UserWriteUsingAlternativeSecurityId . Antes de uma nova conta social ser criada, a transformação de declarações CreateOtherMailsFromEmail lê o ClaimType e adiciona o valor ao ClaimType otherMails .

Exemplo de AddItemToStringCollection

A transformação de declarações a seguir adiciona o e-mail ClaimType a otherMails 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>
  • Declarações de entrada:
    • coleção: ["someone@outlook.com"]
    • Artigo: "admin@contoso.com"
  • Declarações de saída:
    • coleção: ["someone@outlook.com", "admin@contoso.com"]

AddParameterToStringCollection

Adiciona um parâmetro string a uma nova declaração stringCollection de valores exclusivos. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de dados Observações
InputClaim coleção stringCollection A coleção de cadeia de caracteres a ser adicionada à declaração de saída. Se a coleção contiver itens, a transformação de declarações copiará os itens e adicionará o item ao final da declaração de coleta de saída.
Parâmetro de Entrada item cadeia (de caracteres) O valor a ser adicionado à declaração de saída.
OutputClaim coleção stringCollection O ClaimType que é produzido após essa transformação de declarações ter sido invocada, com o valor especificado no parâmetro input.

Exemplo de AddParameterToStringCollection

O exemplo a seguir adiciona um endereço de e-mail constante (admin@contoso.com) à declaração otherMails .

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

GetSingleItemFromStringCollection

Obtém o primeiro item da coleção de cadeia de caracteres fornecida. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de dados Observações
InputClaim coleção stringCollection Os ClaimTypes que são usados pela transformação de declarações para obter o item.
OutputClaim extractedItem cadeia (de caracteres) Os ClaimTypes que são produzidos após esta ClaimsTransformation ter sido invocada. O primeiro item da coleção.

Exemplo de GetSingleItemFromStringCollection

O exemplo a seguir lê a declaração otherMails e retorna o primeiro item na declaração de email .

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

StringCollectionContains

Verifica se um tipo de declaração StringCollection contém um elemento . Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de dados Observações
InputClaim inputClaim stringCollection A alegação a ser revistada.
Parâmetro de Entrada item cadeia (de caracteres) O valor a pesquisar.
Parâmetro de Entrada ignorarCaso cadeia (de caracteres) Especifica se essa comparação deve ignorar o caso das cadeias de caracteres que estão sendo comparadas.
OutputClaim outputClaim Booleano O ClaimType que é produzido após este ClaimsTransformation foi invocado. Um indicador booleano se a coleção contiver tal cadeia de caracteres

Exemplo de StringCollectionContains

O exemplo a seguir verifica se o roles tipo de declaração stringCollection contém o valor de 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>
  • Declarações de entrada:
    • inputClaim: ["leitor", "autor", "admin"]
  • Parâmetros de entrada:
    • item: "Admin"
    • ignoreCase: "verdadeiro"
  • Declarações de saída:
    • outputClaim: "verdadeiro"

StringCollectionContainsClaim

Verifica se um tipo de declaração StringCollection contém um valor de declaração. Confira a demonstração ao vivo dessa transformação de reivindicações.

Elemento TransformationClaimType Tipo de dados Observações
InputClaim coleção stringCollection A alegação a ser revistada.
InputClaim item cadeia (de caracteres) O tipo de declaração que contém o valor a ser pesquisado.
Parâmetro de Entrada ignorarCaso cadeia (de caracteres) Especifica se essa comparação deve ignorar o caso das cadeias de caracteres que estão sendo comparadas.
OutputClaim outputClaim Booleano O ClaimType que é produzido após este ClaimsTransformation foi invocado. Um indicador booleano se a coleção contiver tal cadeia de caracteres

Exemplo de StringCollectionContainsClaim

O exemplo a seguir verifica se o roles tipo de declaração stringCollection contém o valor do tipo de role declaraçã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> 
  • Declarações de entrada:
    • coleção: ["reader", "author", "admin"]
    • item: "Admin"
  • Parâmetros de entrada:
    • ignoreCase: "verdadeiro"
  • Declarações de saída:
    • outputClaim: "verdadeiro"

Próximos passos

  • Encontre mais exemplos de transformação de declarações no repositório GitHub da comunidade do Azure AD B2C