Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Von Bedeutung
Ab dem 1. Mai 2025 steht Azure AD B2C nicht mehr für neue Kunden zur Verfügung. Weitere Informationen finden Sie in unseren HÄUFIG gestellten Fragen.
Hinweis
In Azure Active Directory B2C sind benutzerdefinierte Richtlinien in erster Linie für komplexe Szenarien konzipiert. Für die meisten Szenarien empfehlen wir die Verwendung von integrierten Benutzerflows. Informieren Sie sich, sofern noch nicht geschehen, unter Tutorial: Erstellen von Benutzerflows und benutzerdefinierten Richtlinien in Azure Active Directory B2C über das Starter Pack für benutzerdefinierte Richtlinien.
Mit dem Lokalisierungselement können Sie mehrere Gebietsschemas oder Sprachen in der Richtlinie für die Benutzerreisen unterstützen. Die Lokalisierungsunterstützung in Richtlinien ermöglicht Folgendes:
- Richten Sie die explizite Liste der unterstützten Sprachen in einer Richtlinie ein, und wählen Sie eine Standardsprache aus.
- Stellen Sie sprachspezifische Zeichenfolgen und Auflistungen bereit.
<Localization Enabled="true">
<SupportedLanguages DefaultLanguage="en" MergeBehavior="ReplaceAll">
<SupportedLanguage>en</SupportedLanguage>
<SupportedLanguage>es</SupportedLanguage>
</SupportedLanguages>
<LocalizedResources Id="api.localaccountsignup.en">
<LocalizedResources Id="api.localaccountsignup.es">
...
Das Lokalisierungselement enthält die folgenden Attribute:
| Merkmal | Erforderlich | BESCHREIBUNG |
|---|---|---|
| Aktiviert | Nein | Mögliche Werte: true oder false. |
Das Localization-Element enthält die folgenden XML-Elemente.
| Element | Vorkommen | BESCHREIBUNG |
|---|---|---|
| Unterstützte Sprachen | 1:n | Liste der unterstützten Sprachen. |
| Lokalisierte Ressourcen | 0:n | Liste der lokalisierten Ressourcen. |
Unterstützte Sprachen
Das SupportedLanguages-Element enthält die folgenden Attribute:
| Merkmal | Erforderlich | BESCHREIBUNG |
|---|---|---|
| Standardsprache | Ja | Die Sprache, die als Standard für lokalisierte Ressourcen verwendet werden soll. |
| Merge-Verhalten | Nein | Eine Enumerationswerte von Werten, die zusammen mit einem beliebigen ClaimType zusammengeführt werden, der in einer übergeordneten Richtlinie mit demselben Bezeichner vorhanden ist. Verwenden Sie dieses Attribut, wenn Sie einen anspruch überschreiben, der in der Basisrichtlinie angegeben ist. Mögliche Werte: Append, Prepend oder ReplaceAll. Der Append Wert gibt an, dass die Auflistung vorhandener Daten an das Ende der auflistung angefügt werden soll, die in der übergeordneten Richtlinie angegeben ist. Der Prepend Wert gibt an, dass die Auflistung vorhandener Daten vor der in der übergeordneten Richtlinie angegebenen Auflistung hinzugefügt werden soll. Der ReplaceAll Wert gibt an, dass die in der übergeordneten Richtlinie definierte Sammlung von Daten ignoriert werden soll, indem stattdessen die in der aktuellen Richtlinie definierten Daten verwendet werden. |
Unterstützte Sprachen
Das SupportedLanguages-Element enthält die folgenden Elemente:
| Element | Vorkommen | BESCHREIBUNG |
|---|---|---|
| Unterstützte Sprache | 1:n | Zeigt Inhalt an, der einem Sprachtag gemäß RFC 5646 - Tags für die Identifizierung von Sprachen entspricht. |
Lokalisierte Ressourcen
Das LocalizedResources-Element enthält die folgenden Attribute:
| Merkmal | Erforderlich | BESCHREIBUNG |
|---|---|---|
| Id | Ja | Ein Bezeichner, der verwendet wird, um lokalisierte Ressourcen eindeutig zu identifizieren. |
Das LocalizedResources-Element enthält die folgenden Elemente:
| Element | Vorkommen | BESCHREIBUNG |
|---|---|---|
| LocalizedCollections | 0:n | Definiert ganze Sammlungen in verschiedenen Kulturen. Eine Auflistung kann unterschiedliche Anzahl von Elementen und Zeichenfolgen für verschiedene Kulturen aufweisen. Beispiele für Auflistungen sind die Enumerationen, die in Anspruchstypen angezeigt werden. Beispielsweise wird dem Benutzer eine Länder-/Regionsliste in einer Dropdownliste angezeigt. |
| LocalizedStrings | 0:n | Definiert alle Zeichenfolgen, mit Ausnahme der Zeichenfolgen, die in Auflistungen angezeigt werden, in verschiedenen Kulturen. |
LocalizedCollections
Das LocalizedCollections-Element enthält die folgenden Elemente:
| Element | Vorkommen | BESCHREIBUNG |
|---|---|---|
| LocalizedCollection | 1:n | Liste der unterstützten Sprachen. |
LocalizedCollection
Das LocalizedCollection-Element enthält die folgenden Attribute:
| Merkmal | Erforderlich | BESCHREIBUNG |
|---|---|---|
| Elementtyp | Ja | Verweist auf ein ClaimType-Element oder ein Benutzeroberflächenelement in der Richtliniendatei. |
| ElementId | Ja | Eine Zeichenfolge, die einen Verweis auf einen Anspruchstyp enthält, der bereits im ClaimsSchema-Abschnitt definiert ist, der verwendet wird, wenn ElementType auf einen ClaimType festgelegt ist. |
| TargetCollection | Ja | Die Zielauflistung. |
Das LocalizedCollection-Element enthält die folgenden Elemente:
| Element | Vorkommen | BESCHREIBUNG |
|---|---|---|
| Gegenstand | 0:n | Definiert eine verfügbare Option, die der Benutzer für einen Anspruch auf der Benutzeroberfläche auswählen kann, z. B. einen Wert in einer Dropdownliste. |
Das Element "Item " enthält die folgenden Attribute:
| Merkmal | Erforderlich | BESCHREIBUNG |
|---|---|---|
| Text | Ja | Die benutzerfreundliche Anzeigezeichenfolge, die dem Benutzer auf der Benutzeroberfläche für diese Option angezeigt werden soll. |
| Wert | Ja | Der Zeichenfolgenanspruchswert, der mit der Auswahl dieser Option verknüpft ist. |
| AuswählenNach Standard | Nein | Gibt an, ob diese Option auf der Benutzeroberfläche standardmäßig ausgewählt werden soll. Mögliche Werte: „True“ oder „False“. |
Das folgende Beispiel zeigt die Verwendung des LocalizedCollections-Elements . Es enthält zwei LocalizedCollection-Elemente , eines für Englisch und eins für Spanisch. Beide legen die Einschränkungsauflistung des Anspruchs Gender mit einer Liste von Elementen für Englisch und Spanisch fest. Weitere Beispiele finden Sie in der Livedemo zum „Restrict Enumerationen“-Anspruch.
<LocalizedResources Id="api.selfasserted.en">
<LocalizedCollections>
<LocalizedCollection ElementType="ClaimType" ElementId="Gender" TargetCollection="Restriction">
<Item Text="Female" Value="F" />
<Item Text="Male" Value="M" />
</LocalizedCollection>
</LocalizedCollections>
</LocalizedResources>
<LocalizedResources Id="api.selfasserted.es">
<LocalizedCollections>
<LocalizedCollection ElementType="ClaimType" ElementId="Gender" TargetCollection="Restriction">
<Item Text="Femenino" Value="F" />
<Item Text="Masculino" Value="M" />
</LocalizedCollection>
</LocalizedCollections>
</LocalizedResources>
LocalizedStrings
Das LocalizedStrings-Element enthält die folgenden Elemente:
| Element | Vorkommen | BESCHREIBUNG |
|---|---|---|
| LocalizedString | 1:n | Eine lokalisierte Zeichenfolge. |
Das LocalizedString-Element enthält die folgenden Attribute:
| Merkmal | Erforderlich | BESCHREIBUNG |
|---|---|---|
| Elementtyp | Ja | Mögliche Werte: ClaimsProvider, ClaimType, ErrorMessage, GetLocalizedStringsTransformationClaimType, FormatLocalizedStringTransformationClaimType, Predicate, PredicateValidation oder UxElement. |
| ElementId | Ja | Wenn ElementType auf ClaimType, Predicateoder PredicateValidation, dieses Element enthält einen Verweis auf einen Anspruchstyp, der bereits im Abschnitt ClaimsSchema definiert ist. |
| StringId | Ja | Wenn ElementType auf " ClaimTypeElementType" festgelegt ist, enthält dieses Element einen Verweis auf ein Attribut eines Anspruchstyps. Mögliche Werte: DisplayName, AdminHelpText oder PatternHelpText. Der DisplayName Wert wird verwendet, um den Anzeigenamen des Anspruchs festzulegen. Der AdminHelpText Wert wird verwendet, um den Hilfetextnamen des Anspruchsbenutzers festzulegen. Der PatternHelpText Wert wird verwendet, um den Hilfetext für das Anspruchsmuster festzulegen. Wenn ElementType auf " UxElementElementType" festgelegt ist, enthält dieses Element einen Verweis auf ein Attribut eines Benutzeroberflächenelements. Wenn ElementType auf ErrorMessage"ElementType" festgelegt ist, gibt dieses Element den Bezeichner einer Fehlermeldung an. Eine vollständige Liste der Bezeichner finden Sie unter UxElement. |
Elementtyp
Der ElementType-Verweis auf einen Anspruchstyp, eine Anspruchstransformation oder ein Benutzeroberflächenelement in der Richtlinie, die lokalisiert werden soll.
| Element, das lokalisiert werden soll | Elementtyp | ElementId | StringId |
|---|---|---|---|
| Identitätsanbietername | ClaimsProvider |
Die ID des ClaimsExchange-Elements | |
| Attribute des Anspruchstyps | ClaimType |
Name des Anspruchstyps | Das Attribut des zu lokalisierenden Anspruchs. Mögliche Werte: AdminHelpText, DisplayName, , PatternHelpTextund UserHelpText. |
| Fehlermeldung | ErrorMessage |
Die ID der Fehlermeldung | |
| Kopiert lokalisierte Zeichenfolgen in Ansprüche | GetLocalizedStringsTransformationClaimType |
Der Name des Ausgabeanspruchs | |
| Prädikat der Benutzernachricht | Predicate |
Der Name des Prädikats | Das Attribut des zu lokalisierenden Prädikats. Mögliche Werte: HelpText. |
| Prädikatgruppenbenutzernachricht | PredicateValidation |
Die ID des PredicateValidation-Elements. | Die ID des PredicateGroup-Elements. Die Prädikatgruppe muss ein untergeordnetes Element des Prädikatüberprüfungselements sein, das in der ElementId definiert ist. |
| Benutzeroberflächenelemente | UxElement |
Die ID des zu lokalisierenden Benutzeroberflächenelements. | |
| Anzeigesteuerelement | DisplayControl |
Die ID des Anzeigesteuerelements. | Die ID des zu lokalisierenden Benutzeroberflächenelements. |
Beispiele
Anspruchsanbieter
Der ClaimsProvider-Wert wird verwendet, um einen der Anzeigenamen der Anspruchsanbieter zu lokalisieren.
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="FacebookExchange" TechnicalProfileReferenceId="Facebook-OAUTH" />
<ClaimsExchange Id="GoogleExchange" TechnicalProfileReferenceId="Google-OAUTH" />
<ClaimsExchange Id="LinkedInExchange" TechnicalProfileReferenceId="LinkedIn-OAUTH" />
</ClaimsExchanges>
</OrchestrationStep>
Das folgende Beispiel zeigt, wie der Anzeigename der Anspruchsanbieter lokalisiert wird.
<LocalizedString ElementType="ClaimsProvider" StringId="FacebookExchange">Facebook</LocalizedString>
<LocalizedString ElementType="ClaimsProvider" StringId="GoogleExchange">Google</LocalizedString>
<LocalizedString ElementType="ClaimsProvider" StringId="LinkedInExchange">LinkedIn</LocalizedString>
Anspruchstyp
Der ClaimType-Wert wird verwendet, um eines der Anspruchsattribute zu lokalisieren.
<ClaimType Id="email">
<DisplayName>Email Address</DisplayName>
<DataType>string</DataType>
<UserHelpText>Email address that can be used to contact you.</UserHelpText>
<UserInputType>TextBox</UserInputType>
</ClaimType>
Das folgende Beispiel zeigt, wie Sie die Attribute DisplayName, UserHelpText und PatternHelpText des E-Mail-Anspruchstyps lokalisieren.
<LocalizedString ElementType="ClaimType" ElementId="email" StringId="DisplayName">Email</LocalizedString>
<LocalizedString ElementType="ClaimType" ElementId="email" StringId="UserHelpText">Please enter your email</LocalizedString>
<LocalizedString ElementType="ClaimType" ElementId="email" StringId="PatternHelpText">Please enter a valid email address</LocalizedString>
Fehlermeldung
Der ErrorMessage-Wert wird verwendet, um eine der Systemfehlermeldungen zu lokalisieren.
<TechnicalProfile Id="AAD-UserWriteUsingAlternativeSecurityId">
<Metadata>
<Item Key="RaiseErrorIfClaimsPrincipalAlreadyExists">true</Item>
<Item Key="UserMessageIfClaimsPrincipalAlreadyExists">You are already registered, please press the back button and sign in instead.</Item>
</Metadata>
...
</TechnicalProfile>
Das folgende Beispiel zeigt, wie die Fehlermeldung "UserMessageIfClaimsPrincipalAlreadyExists" lokalisiert wird.
<LocalizedString ElementType="ErrorMessage" StringId="UserMessageIfClaimsPrincipalAlreadyExists">The account you are trying to create already exists, please sign-in.</LocalizedString>
FormatLocalizedStringTransformationClaimType
Der FormatLocalizedStringTransformationClaimType-Wert wird verwendet, um Ansprüche in eine lokalisierte Zeichenfolge zu formatieren. Weitere Informationen finden Sie unter FormatLocalizedString-Anspruchstransformation
<ClaimsTransformation Id="SetResponseMessageForEmailAlreadyExists" TransformationMethod="FormatLocalizedString">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" />
</InputClaims>
<InputParameters>
<InputParameter Id="stringFormatId" DataType="string" Value="ResponseMessage_EmailExists" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="responseMsg" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
Das folgende Beispiel zeigt, wie Sie das Zeichenfolgenformat der FormatLocalizedStringTransformationClaimType-Anspruchstransformation lokalisieren.
<LocalizedString ElementType="FormatLocalizedStringTransformationClaimType" StringId="ResponseMessage_EmailExists">The email '{0}' is already an account in this organization. Click Next to sign in with that account.</LocalizedString>
GetLocalizedStringsTransformationClaimType
Der Wert "GetLocalizedStringsTransformationClaimType" wird verwendet, um lokalisierte Zeichenfolgen in Ansprüche zu kopieren. Weitere Informationen finden Sie unter GetLocalizedStringsTransformation claims transformation
<ClaimsTransformation Id="GetLocalizedStringsForEmail" TransformationMethod="GetLocalizedStringsTransformation">
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="subject" TransformationClaimType="email_subject" />
<OutputClaim ClaimTypeReferenceId="message" TransformationClaimType="email_message" />
<OutputClaim ClaimTypeReferenceId="codeIntro" TransformationClaimType="email_code" />
<OutputClaim ClaimTypeReferenceId="signature" TransformationClaimType="email_signature" />
</OutputClaims>
</ClaimsTransformation>
Das folgende Beispiel zeigt, wie Ausgabeansprüche der GetLocalizedStringsTransformation-Anspruchstransformation lokalisiert werden.
<LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_subject">Contoso account email verification code</LocalizedString>
<LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_message">Thanks for verifying your account!</LocalizedString>
<LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_code">Your code is</LocalizedString>
<LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_signature">Sincerely</LocalizedString>
Prädikat
Der Prädikatwert wird verwendet, um eine der Prädikatfehlermeldungen zu lokalisieren.
<Predicates>
<Predicate Id="LengthRange" Method="IsLengthRange" HelpText="The password must be between 6 and 64 characters.">
<Parameters>
<Parameter Id="Minimum">6</Parameter>
<Parameter Id="Maximum">64</Parameter>
</Parameters>
</Predicate>
<Predicate Id="Lowercase" Method="IncludesCharacters" HelpText="a lowercase letter">
<Parameters>
<Parameter Id="CharacterSet">a-z</Parameter>
</Parameters>
</Predicate>
<Predicate Id="Uppercase" Method="IncludesCharacters" HelpText="an uppercase letter">
<Parameters>
<Parameter Id="CharacterSet">A-Z</Parameter>
</Parameters>
</Predicate>
</Predicates>
Im folgenden Beispiel wird gezeigt, wie Sie Hilfetext für Prädikate lokalisieren.
<LocalizedString ElementType="Predicate" ElementId="LengthRange" StringId="HelpText">The password must be between 6 and 64 characters.</LocalizedString>
<LocalizedString ElementType="Predicate" ElementId="Lowercase" StringId="HelpText">a lowercase letter</LocalizedString>
<LocalizedString ElementType="Predicate" ElementId="Uppercase" StringId="HelpText">an uppercase letter</LocalizedString>
PrädikatValidation
Der PredicateValidation-Wert wird verwendet, um eine der Fehlermeldungen der PredicateValidation-Gruppe zu lokalisieren.
<PredicateValidations>
<PredicateValidation Id="CustomPassword">
<PredicateGroups>
<PredicateGroup Id="LengthGroup">
<PredicateReferences MatchAtLeast="1">
<PredicateReference Id="LengthRange" />
</PredicateReferences>
</PredicateGroup>
<PredicateGroup Id="CharacterClasses">
<UserHelpText>The password must have at least 3 of the following:</UserHelpText>
<PredicateReferences MatchAtLeast="3">
<PredicateReference Id="Lowercase" />
<PredicateReference Id="Uppercase" />
<PredicateReference Id="Number" />
<PredicateReference Id="Symbol" />
</PredicateReferences>
</PredicateGroup>
</PredicateGroups>
</PredicateValidation>
</PredicateValidations>
Das folgende Beispiel zeigt, wie Sie einen Hilfetext für eine Prädikatüberprüfungsgruppe lokalisieren.
<LocalizedString ElementType="PredicateValidation" ElementId="CustomPassword" StringId="CharacterClasses">The password must have at least 3 of the following:</LocalizedString>
UxElement
Der UxElement-Wert wird verwendet, um eines der Benutzeroberflächenelemente zu lokalisieren. Das folgende Beispiel zeigt, wie Sie die Schaltflächen "Weiter" und "Abbrechen" lokalisieren.
<LocalizedString ElementType="UxElement" StringId="button_continue">Create new account</LocalizedString>
<LocalizedString ElementType="UxElement" StringId="button_cancel">Cancel</LocalizedString>
DisplayControl (Anzeigesteuerung)
Der DisplayControl-Wert wird verwendet, um eines der Steuerelemente-Benutzeroberflächenelemente zu lokalisieren. Wenn diese Option aktiviert ist, hat das Anzeigesteuerelement "localizedStrings " Vorrang vor einigen der UxElement StringIDs wie ver_but_send, ver_but_edit, ver_but_resend und ver_but_verify. Das folgende Beispiel zeigt, wie Sie die Schaltflächen "Senden" und "Überprüfen" lokalisieren.
<LocalizedString ElementType="DisplayControl" ElementId="emailVerificationControl" StringId="but_send_code">Send verification code</LocalizedString>
<LocalizedString ElementType="DisplayControl" ElementId="emailVerificationControl" StringId="but_verify_code">Verify code</LocalizedString>
Im Abschnitt "Metadaten" eines selbst bestätigten technischen Profils muss der referenzierte ContentDefinition DataUri auf Seitenlayout, Version 2.1.0 oder höher, festgelegt sein. Beispiel:
<ContentDefinition Id="api.selfasserted">
<DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:2.1.0</DataUri>
...
Nächste Schritte
Die folgenden Artikel enthalten Lokalisierungsbeispiele: