StringCollection-anspråkstransformeringar
Den här artikeln innehåller exempel på hur du använder omvandlingar av anspråk för strängsamlingen av Identity Experience Framework-schemat i Azure Active Directory B2C (Azure AD B2C). Mer information finns i anspråkstransformeringar.
AddItemToStringCollection
Lägger till ett stränganspråk till ett nytt stringCollection-anspråk för unika värden. Ta en titt på livedemon för den här anspråkstransformeringen.
Element | TransformationClaimType | Datatyp | Kommentarer |
---|---|---|---|
InputClaim | Element | sträng | Den ClaimType som ska läggas till i utdataanspråket. |
InputClaim | samling | stringCollection | Strängsamlingen som ska läggas till i utdataanspråket. Om samlingen innehåller objekt kopierar anspråkstransformeringen objekten och lägger till objektet i slutet av utdatainsamlingsanspråket. |
OutputClaim | samling | stringCollection | Den ClaimType som skapas efter denna anspråkstransformering har anropats, med det värde som anges i det inkommande anspråket. |
Använd den här anspråkstransformeringen för att lägga till en sträng i en ny eller befintlig stringCollection. Den används ofta i en teknisk AAD-UserWriteUsingAlternativeSecurityId-profil . Innan ett nytt socialt konto skapas läser CreateOtherMailsFromEmail-anspråkstransformeringen ClaimType och lägger till värdet i otherMails ClaimType.
Exempel på AddItemToStringCollection
Följande anspråkstransformering lägger till e-postanspråkstypen till 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>
- Inkommande anspråk:
- collection: ["someone@outlook.com"]
- item: "admin@contoso.com"
- Utgående anspråk:
- collection: ["someone@outlook.com", "admin@contoso.com"]
AddParameterToStringCollection
Lägger till en strängparameter i ett nytt stringCollection-anspråk för unika värden. Check out the Live demo of this claims transformation.
Element | TransformationClaimType | Datatyp | Kommentarer |
---|---|---|---|
InputClaim | samling | stringCollection | The string collection to be added to the output claim. If the collection contains items, the claims transformation copies the items, and adds the item to the end of the output collection claim. |
InputParameter | Element | sträng | Värdet som ska läggas till i utdataanspråket. |
OutputClaim | samling | stringCollection | Den ClaimType som skapas efter denna anspråkstransformering har anropats, med det värde som anges i indataparametern. |
Exempel på AddParameterToStringCollection
I följande exempel läggs en konstant e-postadress (admin@contoso.com) till i anspråket 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>
- Input claims:
- collection: ["someone@outlook.com"]
- Indataparametrar
- item: "admin@contoso.com"
- Output claims:
- collection: ["someone@outlook.com", "admin@contoso.com"]
GetSingleItemFromStringCollection
Hämtar det första objektet från den angivna strängsamlingen. Check out the Live demo of this claims transformation.
Element | TransformationClaimType | Datatyp | Kommentarer |
---|---|---|---|
InputClaim | samling | stringCollection | ClaimTypes som används av anspråkstransformeringen för att hämta objektet. |
OutputClaim | extractedItem | sträng | ClaimTypes som skapas efter denna ClaimsTransformation har anropats. Det första objektet i samlingen. |
Exempel på GetSingleItemFromStringCollection
I följande exempel läses otherMails-anspråket och det första objektet returneras till e-postanspråket .
<ClaimsTransformation Id="CreateEmailFromOtherMails" TransformationMethod="GetSingleItemFromStringCollection">
<InputClaims>
<InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedItem" />
</OutputClaims>
</ClaimsTransformation>
- Input claims:
- collection: ["someone@outlook.com", "someone@contoso.com"]
- Output claims:
- extractedItem: "someone@outlook.com"
StringCollectionContains
Kontrollerar om en StringCollection-anspråkstyp innehåller ett element. Check out the Live demo of this claims transformation.
Element | TransformationClaimType | Datatyp | Kommentarer |
---|---|---|---|
InputClaim | inputClaim | stringCollection | Anspråket som ska genomsökas. |
InputParameter | objekt | sträng | Det värde som ska sökas. |
InputParameter | ignoreCase | sträng | Anger om den här jämförelsen ska ignorera fallet med de strängar som jämförs. |
OutputClaim | outputClaim | boolean | ClaimType som skapas efter denna ClaimsTransformation har anropats. En boolesk indikator om samlingen innehåller en sådan sträng |
Exempel på StringCollectionContains
I följande exempel kontrolleras om roles
anspråkstypen stringCollection innehåller värdet 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>
- Inkommande anspråk:
- inputClaim: ["reader", "author", "admin"]
- Indataparametrar:
- item: "Admin"
- ignoreCase: "true"
- Utgående anspråk:
- outputClaim: "true"
StringCollectionContainsClaim
Kontrollerar om en StringCollection-anspråkstyp innehåller ett anspråksvärde. Ta en titt på livedemon för den här anspråkstransformeringen.
Element | TransformationClaimType | Datatyp | Kommentarer |
---|---|---|---|
InputClaim | samling | stringCollection | Anspråket som ska genomsökas. |
InputClaim | objekt | sträng | Anspråkstypen som innehåller det värde som ska sökas. |
InputParameter | ignoreCase | sträng | Anger om den här jämförelsen ska ignorera fallet med de strängar som jämförs. |
OutputClaim | outputClaim | boolean | ClaimType som skapas efter denna ClaimsTransformation har anropats. En boolesk indikator om samlingen innehåller en sådan sträng |
Exempel på StringCollectionContainsClaim
I följande exempel kontrolleras om roles
anspråkstypen stringCollection innehåller värdet för anspråkstypen role
.
<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>
- Inkommande anspråk:
- collection: ["reader", "author", "admin"]
- item: "Admin"
- Indataparametrar:
- ignoreCase: "true"
- Utgående anspråk:
- outputClaim: "true"
Nästa steg
- Hitta fler exempel på anspråkstransformering på GitHub-lagringsplatsen för Azure AD B2C-community