Trasformazioni delle attestazioni StringCollection

Questo articolo fornisce esempi per l'uso delle trasformazioni delle attestazioni di raccolta di stringhe dello schema di Identity Experience Framework in Azure Active Directory B2C (Azure AD B2C). Per altre informazioni, vedere Trasformazioni delle attestazioni.

AddItemToStringCollection

Aggiunge un'attestazione stringa a una nuova attestazione stringCollection di valori univoci. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim Elemento string Il ClaimType da aggiungere all'attestazione di output.
InputClaim collection stringCollection Raccolta di stringhe da aggiungere all'attestazione di output. Se la raccolta contiene elementi, la trasformazione delle attestazioni copia gli elementi e aggiunge l'elemento alla fine dell'attestazione della raccolta di output.
OutputClaim collection stringCollection ClaimType generato dopo la chiamata di questa trasformazione delle attestazioni, con il valore specificato nell'attestazione di input.

Usare questa trasformazione delle attestazioni per aggiungere una stringa a un oggetto stringCollection nuovo o esistente. Viene comunemente usato in un profilo tecnico AAD-UserWriteUsingAlternativeSecurityId. Prima che venga creato un nuovo account di social networking, la trasformazione di attestazioni CreateOtherMailsFromEmail legge il ClaimType e aggiunge il valore al ClaimType otherMails.

Esempio di AddItemToStringCollection

La trasformazione delle attestazioni seguente aggiunge il ClaimType del messaggio di posta elettronica al ClaimType otherMails.

<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>
  • Attestazioni di input:
    • collection: ["someone@outlook.com"]
    • item: "admin@contoso.com"
  • Attestazioni di output:
    • collection: ["someone@outlook.com", "admin@contoso.com"]

AddParameterToStringCollection

Aggiunge un parametro stringa a una nuova attestazione stringCollection di valori univoci. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim collection stringCollection Raccolta di stringhe da aggiungere all'attestazione di output. Se la raccolta contiene elementi, la trasformazione delle attestazioni copia gli elementi e aggiunge l'elemento alla fine dell'attestazione della raccolta di output.
InputParameter Elemento string Il valore da aggiungere all'attestazione di output.
OutputClaim collection stringCollection Tipo attestazione generato dopo che questa trasformazione di attestazioni è stato richiamato con il valore specificato nel parametro di input.

Esempio di AddParameterToStringCollection

L'esempio seguente aggiunge un indirizzo di posta elettronica costante (admin@contoso.com) all'attestazione 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>
  • Attestazioni di input:
    • collection: ["someone@outlook.com"]
  • Parametri di input
    • item: "admin@contoso.com"
  • Attestazioni di output:
    • collection: ["someone@outlook.com", "admin@contoso.com"]

GetSingleItemFromStringCollection

Consente di ottenere il primo elemento della raccolta di stringhe fornita. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim collection stringCollection I ClaimType che vengono usati dalla trasformazione delle attestazioni per ottenere l'elemento.
OutputClaim extractedItem string Gli oggetti ClaimType generati dopo che l'oggetto ClaimsTransformation è stato richiamato. Primo elemento nella raccolta.

Esempio di GetSingleItemFromStringCollection

Nell'esempio seguente viene letta l'attestazione otherMails e viene restituito il primo elemento nell'attestazione di posta elettronica .

<ClaimsTransformation Id="CreateEmailFromOtherMails" TransformationMethod="GetSingleItemFromStringCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedItem" />
  </OutputClaims>
</ClaimsTransformation>
  • Attestazioni di input:
    • collection: ["someone@outlook.com", "someone@contoso.com"]
  • Attestazioni di output:
    • extractedItem: "someone@outlook.com"

StringCollectionContains

Controlla se un tipo di attestazione StringCollection contiene un elemento. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim inputClaim stringCollection Attestazione da cercare.
InputParameter item string Valore da cercare.
InputParameter ignoreCase string Specifica se il confronto deve ignorare l'uso di maiuscole e minuscole nelle stringhe da confrontare.
OutputClaim outputClaim boolean ClaimType generato dopo che è stata chiamata questa ClaimsTransformation. Indicatore booleano se la raccolta contiene una stringa di questo tipo

Esempio di StringCollectionContains

Nell'esempio seguente viene verificato se il roles tipo di attestazione stringCollection contiene il valore di 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>
  • Attestazioni di input:
    • inputClaim: ["reader", "author", "admin"]
  • Parametri di input:
    • item: "Amministrazione"
    • ignoreCase: "true"
  • Attestazioni di output:
    • outputClaim: "true"

StringCollectionContainsClaim

Controlla se un tipo di attestazione StringCollection contiene un valore attestazione. Vedere la demo live di questa trasformazione delle attestazioni.

Elemento TransformationClaimType Tipo di dati Note
InputClaim collection stringCollection Attestazione da cercare.
InputClaim item string Tipo di attestazione che contiene il valore da cercare.
InputParameter ignoreCase string Specifica se il confronto deve ignorare l'uso di maiuscole e minuscole nelle stringhe da confrontare.
OutputClaim outputClaim boolean ClaimType generato dopo che è stata chiamata questa ClaimsTransformation. Indicatore booleano se la raccolta contiene una stringa di questo tipo

Esempio di StringCollectionContainsClaim

Nell'esempio seguente viene verificato se il roles tipo di attestazione stringCollection contiene il valore del role tipo di attestazione.

<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> 
  • Attestazioni di input:
    • collection: ["reader", "author", "admin"]
    • item: "Amministrazione"
  • Parametri di input:
    • ignoreCase: "true"
  • Attestazioni di output:
    • outputClaim: "true"

Passaggi successivi