Transformationen von StringCollection-Ansprüchen
In diesem Artikel werden Beispiele für die Verwendung von Transformationen von StringCollection-Ansprüchen für das Identity Experience Framework-Schema in Azure Active Directory B2C (Azure AD B2C) veranschaulicht. Weitere Informationen finden Sie unter Transformationen von Ansprüchen.
AddItemToStringCollection
Fügt einen Zeichenfolgenanspruch zu einem neuen stringCollection-Anspruch mit eindeutigen Werten hinzu. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | Element | Zeichenfolge | Der Anspruchstyp, der dem Ausgabeanspruch hinzugefügt werden soll. |
InputClaim | collection | stringCollection | Die Zeichenfolgensammlung, die dem Ausgabeanspruch hinzugefügt werden soll. Wenn die Sammlung Elemente enthält, werden die Elemente von der Anspruchstransformation kopiert, und das Element wird am Ende des Ausgabensammlungsanspruchs hinzugefügt. |
OutputClaim | collection | stringCollection | Der Anspruchstyp, der erstellt wird, nachdem diese Anspruchstransformation ausgelöst wurde, und zwar mit dem Wert, der im Eingabeparameter angegeben wurde. |
Verwenden Sie diese Anspruchstransformation, um eine Zeichenfolge zu einer neuen oder einer vorhandenen Zeichenfolgensammlung hinzuzufügen. Sie wird häufig in einem technischen AAD-UserWriteUsingAlternativeSecurityId-Profil verwendet. Bevor ein Social Media-Konto erstellt wird, liest die CreateOtherMailsFromEmail-Anspruchstransformation den Anspruchstyp und fügt den Wert zum Anspruchstyp otherMails hinzu.
Beispiel für AddItemToStringCollection
Die folgende Anspruchstransformation fügt den Anspruchstyp email zu otherMails hinzu.
<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>
- Eingabeansprüche:
- collection: [„someone@outlook.com“]
- item: „admin@contoso.com“
- Ausgabeansprüche:
- collection: [„someone@outlook.com“, „admin@contoso.com“]
AddParameterToStringCollection
Fügt einen Zeichenfolgenparameter zu einem neuen stringCollection-Anspruch mit eindeutigen Werten hinzu. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | collection | stringCollection | Die Zeichenfolgensammlung, die dem Ausgabeanspruch hinzugefügt werden soll. Wenn die Sammlung Elemente enthält, werden die Elemente von der Anspruchstransformation kopiert, und das Element wird am Ende des Ausgabensammlungsanspruchs hinzugefügt. |
InputParameter | Element | Zeichenfolge | Der Wert, der dem Ausgabeanspruch hinzugefügt werden soll. |
OutputClaim | collection | stringCollection | Der Anspruchstyp, der erstellt wird, nachdem diese Anspruchstransformation ausgelöst wurde. Es handelt sich um den Wert, der im Eingabeparameter angegeben ist. |
Beispiel für AddItemToStringCollection
Im folgenden Beispiel wird eine konstante E-Mail-Adresse (admin@contoso.com) zum Anspruch otherMails hinzugefügt.
<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>
- Eingabeansprüche:
- collection: [„someone@outlook.com“]
- Eingabeparameter
- item: „admin@contoso.com“
- Ausgabeansprüche:
- collection: [„someone@outlook.com“, „admin@contoso.com“]
GetSingleItemFromStringCollection
Ruft das erste Element aus der angegebenen Zeichenfolgensammlung ab. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | collection | stringCollection | Die Anspruchstypen, die von der Anspruchstransformation verwendet werden, um das Element abzurufen |
OutputClaim | extractedItem | Zeichenfolge | Die Anspruchstypen, die erstellt werden, nachdem diese Anspruchstransformation aufgerufen wurde. Das erste Element in der Sammlung. |
Beispiele für GetSingleItemFromStringCollection
Im folgenden Beispiel wird der Anspruch otherMails gelesen, und das erste Element wird im Anspruch email zurückgegeben.
<ClaimsTransformation Id="CreateEmailFromOtherMails" TransformationMethod="GetSingleItemFromStringCollection">
<InputClaims>
<InputClaim ClaimTypeReferenceId="otherMails" TransformationClaimType="collection" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="extractedItem" />
</OutputClaims>
</ClaimsTransformation>
- Eingabeansprüche:
- collection: [„someone@outlook.com“, „someone@contoso.com“]
- Ausgabeansprüche:
- extractedItem: „someone@outlook.com“
StringCollectionContains
Überprüft, ob ein StringCollection-Anspruchstyp ein Element enthält. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | inputClaim | stringCollection | Der zu durchsuchende Anspruch. |
InputParameter | item | Zeichenfolge | Der zu suchende Wert. |
InputParameter | ignoreCase | Zeichenfolge | Gibt an, ob bei diesem Vergleich die Groß-/Kleinschreibung in den Zeichenfolgen, die miteinander verglichen werden, ignoriert werden soll. |
OutputClaim | outputClaim | boolean | Der Anspruchstyp, der erstellt wird, nachdem diese Anspruchstransformation aufgerufen wurde. Ein boolescher Indikator, wenn die Auflistung eine derartige Zeichenfolge enthält |
Beispiel für StringCollectionContains
Im folgenden Beispiel wird überprüft, ob der stringCollection-Anspruchstyp roles
den Wert admin enthält.
<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>
- Eingabeansprüche:
- inputClaim: ["reader", "author", "admin"]
- Eingabeparameter:
- item: "Admin"
- ignoreCase: "true"
- Ausgabeansprüche:
- outputClaim: "true"
StringCollectionContainsClaim
Überprüft, ob ein StringCollection-Anspruchstyp einen Anspruchswert enthält. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | collection | stringCollection | Der zu durchsuchende Anspruch. |
InputClaim | item | Zeichenfolge | Der Anspruchstyp, der den zu suchenden Wert enthält. |
InputParameter | ignoreCase | Zeichenfolge | Gibt an, ob bei diesem Vergleich die Groß-/Kleinschreibung in den Zeichenfolgen, die miteinander verglichen werden, ignoriert werden soll. |
OutputClaim | outputClaim | boolean | Der Anspruchstyp, der erstellt wird, nachdem diese Anspruchstransformation aufgerufen wurde. Ein boolescher Indikator, wenn die Auflistung eine derartige Zeichenfolge enthält |
Beispiel für StringCollectionContains
Im folgenden Beispiel wird überprüft, ob der stringCollection-Anspruchstyp roles
den Wert des Anspruchstyps role
enthält.
<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>
- Eingabeansprüche:
- collection: ["reader", "author", "admin"]
- item: "Admin"
- Eingabeparameter:
- ignoreCase: "true"
- Ausgabeansprüche:
- outputClaim: "true"
Nächste Schritte
- Weitere Beispiele für die Anspruchstransformation finden Sie im GitHub-Repository der Azure-AD-B2C-Community