Compartilhar via


Transformações de declarações StringCollection

Este artigo fornece exemplos para usar as transformações de declarações de coleção de cadeias de caracteres do esquema identity experience framework no Azure AD B2C (Azure Active Directory 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 desta transformação de declarações.

Elemento TransformationClaimType Tipo de Dados Anotações
Reivindicação de entrada item cadeia O ClaimType a ser adicionado à declaração de saída.
Reivindicação de entrada coleção stringCollection A coleção de cadeias de caracteres a ser adicionada à declaração de saída. Se a coleção contiver itens, a transformação declarações copiará os itens e adicionará o item ao final da declaração da coleção de saída.
Declaração de saída coleção stringCollection O ClaimType produzido após a invocação dessa transformação de declarações, com o valor especificado na declaração de entrada.

Use essa transformação de declarações para adicionar uma cadeia de caracteres a um stringCollection novo ou existente. Normalmente, ele é 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 email 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"]
    • item: "admin@contoso.com"
  • Declarações de saída:
    • coleção: ["someone@outlook.com", "admin@contoso.com"]

AddParameterToStringCollection

Adiciona um parâmetro de cadeia de caracteres a uma nova declaração stringCollection de valores exclusivos. Confira a Demonstração ao vivo desta transformação de declarações.

Elemento TransformationClaimType Tipo de Dados Anotações
Reivindicação de entrada coleção stringCollection A coleção de cadeias de caracteres a ser adicionada à declaração de saída. Se a coleção contiver itens, a transformação declarações copiará os itens e adicionará o item ao final da declaração da coleção de saída.
Parâmetro de entrada item cadeia O valor a ser adicionado à declaração de saída.
Declaração de saída coleção stringCollection O ClaimType que é produzido após a invocação dessa transformação de declarações, com o valor especificado no parâmetro de entrada.

Exemplo de AddParameterToStringCollection

O exemplo a seguir adiciona um endereço de email 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
    • item: "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 cadeias de caracteres fornecida. Confira a Demonstração ao vivo desta transformação de declarações.

Elemento TransformationClaimType Tipo de Dados Anotações
Reivindicação de entrada coleção stringCollection Os ClaimTypes usados pela transformação de declarações para obter o item.
Declaração de saída extractedItem cadeia Os ClaimTypes que são produzidos após a invocação dessa ClaimsTransformation. 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 desta transformação de declarações.

Elemento TransformationClaimType Tipo de Dados Anotações
Reivindicação de entrada InputClaim stringCollection A declaração a ser pesquisada.
Parâmetro de entrada item cadeia O valor a pesquisar.
Parâmetro de entrada ignoreCase cadeia Especifica se essa comparação deve ignorar maiúsculas e minúsculas das cadeias de caracteres que estão sendo comparadas.
Declaração de saída declaração de saída boolean O ClaimType que é produzido depois que essa ClaimsTransformation é invocada. Um indicador booliano se a coleção contiver essa cadeia de caracteres

Exemplo de StringCollectionContains

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

StringCollectionContainsClaim

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

Elemento TransformationClaimType Tipo de Dados Anotações
Reivindicação de entrada coleção stringCollection A declaração a ser pesquisada.
Reivindicação de entrada item cadeia O tipo de declaração que contém o valor a ser pesquisado.
Parâmetro de entrada ignoreCase cadeia Especifica se essa comparação deve ignorar maiúsculas e minúsculas das cadeias de caracteres que estão sendo comparadas.
Declaração de saída declaração de saída boolean O ClaimType que é produzido depois que essa ClaimsTransformation é invocada. Um indicador booliano se a coleção contiver essa 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: "true"
  • Declarações de saída:
    • outputClaim: "true"

Próximas etapas