Freigeben über


Localization-Element

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: