Transformationen allgemeiner Ansprüche
Dieser Artikel enthält Beispiele für die Verwendung von allgemeiner Anspruchstransformationen der benutzerdefinierten Richtlinien für das Azure Active Directory B2C (Azure AD B2C). Weitere Informationen finden Sie unter Anspruchstransformationen.
CopyClaim
Kopiert den Wert eines Anspruchs in einen anderen. Beide Ansprüche müssen denselben Typ aufweisen. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | inputClaim | String, Int | Dies ist der Anspruchstyp, der kopiert werden soll |
OutputClaim | outputClaim | String, Int | Der Anspruch, der erstellt wird, nachdem diese Anspruchstransformation aufgerufen wurde. |
Verwenden Sie diese Anspruchstransformation, um einen Wert von einer Zeichenfolge oder einem numerischen Anspruch in einen anderen Anspruch zu kopieren. Im folgenden Beispiel wird der Wert des externalEmail-Anspruchs in einen email-Anspruch kopiert.
<ClaimsTransformation Id="CopyEmailAddress" TransformationMethod="CopyClaim">
<InputClaims>
<InputClaim ClaimTypeReferenceId="externalEmail" TransformationClaimType="inputClaim"/>
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="outputClaim"/>
</OutputClaims>
</ClaimsTransformation>
Ein Beispiel für CopyClaim
- Eingabeansprüche:
- inputClaim: bob@contoso.com
- Ausgabeansprüche:
- outputClaim: bob@contoso.com
DoesClaimExist
Überprüft, ob der Eingabeanspruch vorhanden ist, und legt den Ausgabeanspruch entsprechend auf true
oder false
fest. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | inputClaim | Any | Der Eingabeanspruch, dessen Vorhandensein überprüft werden muss. |
OutputClaim | outputClaim | boolean | Der Anspruch, der erstellt wird, nachdem diese Anspruchstransformation aufgerufen wurde. |
Ein Beispiel für DoesClaimExist
Mithilfe dieser Anspruchstransformation können Sie überprüfen, ob ein Anspruch vorhanden ist oder einen beliebigen Wert enthält. Der Rückgabewert ist ein boolescher Wert, der angibt, ob der Anspruch vorhanden ist. Im folgenden Beispiel wird geprüft, ob die E-Mail-Adresse vorhanden ist.
<ClaimsTransformation Id="CheckIfEmailPresent" TransformationMethod="DoesClaimExist">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim" />
</InputClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="isEmailPresent" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
- Eingabeansprüche:
- inputClaim: someone@contoso.com
- Ausgabeansprüche:
- outputClaim: true
Hash
Hash des angegebenen Nur-Texts, der Salt und einen geheimen Schlüssel verwendet. Der verwendete Hashalgorithmus lautet SHA-256. Sehen Sie sich die Livedemo dieser Anspruchstransformation an.
Element | TransformationClaimType | Datentyp | Notizen |
---|---|---|---|
InputClaim | plaintext | Zeichenfolge | Der zu verschlüsselnde Eingabeanspruch |
InputClaim | Salt | Zeichenfolge | Der Salt-Parameter. Sie können mit der CreateRandomString -Anspruchstransformation einen Zufallswert erstellen. |
InputParameter | randomizerSecret | Zeichenfolge | Verweist auf einen vorhandenen Azure AD B2C-Richtlinienschlüssel. Gehen Sie wie folgt vor, um einen neuen Richtlinienschlüssel zu erstellen: Wählen Sie in Ihrem Azure AD B2C-Mandanten unter Verwalten die Option Identity Experience Framework aus. Wählen Sie Richtlinienschlüssel aus, um die in Ihrem Mandanten verfügbaren Schlüssel anzuzeigen. Wählen Sie Hinzufügen. Wählen Sie unter Optionen den Eintrag Manuell aus. Geben Sie einen Namen an (das Präfix B2C_1A_ wird möglicherweise automatisch hinzugefügt). Geben Sie im Textfeld Geheimnis einen geheimen Schlüssel ein, der verwendet werden soll, z. B. „1234567890“. Wählen Sie unter SchlüsselverwendungSignatur aus. Klicken Sie auf Erstellen. |
OutputClaim | hash | Zeichenfolge | Der Anspruch, der erstellt wird, nachdem diese Anspruchstransformation aufgerufen wurde. Der im Eingabeanspruch plaintext konfigurierte Anspruch. |
Ein Beispiel für Hash
Im folgenden Beispiel wird veranschaulicht, wie Sie einen Hash für eine E-Mail-Adresse erstellen. Die Anspruchstransformation fügt der E-Mail-Adresse vor dem Hashing des Werts, den Salt hinzu. Um diese Anspruchstransformation aufzurufen, legen Sie einen Wert auf den mySalt
Anspruch fest.
<ClaimsTransformation Id="HashPasswordWithEmail" TransformationMethod="Hash">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" TransformationClaimType="plaintext" />
<InputClaim ClaimTypeReferenceId="mySalt" TransformationClaimType="salt" />
</InputClaims>
<InputParameters>
<InputParameter Id="randomizerSecret" DataType="string" Value="B2C_1A_AccountTransformSecret" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="hashedEmail" TransformationClaimType="hash" />
</OutputClaims>
</ClaimsTransformation>
- Eingabeansprüche:
- plaintext: someone@contoso.com
- salt: 487624568
- randomizerSecret: B2C_1A_AccountTransformSecret
- Ausgabeansprüche:
- outputClaim: CdMNb/KTEfsWzh9MR1kQGRZCKjuxGMWhA5YQNihzV6U=
Nächste Schritte
- Weitere Beispiele für die Anspruchstransformation finden Sie im GitHub-Repository der Azure-AD-B2C-Community