Lokalisatie-element
Notitie
In Azure Active Directory B2C is een aangepast beleid voornamelijk bedoeld om complexe scenario's aan te pakken. Voor de meeste scenario's raden we u aan de ingebouwde gebruikersstromen te gebruiken. Als u dit nog niet hebt gedaan, vindt u meer informatie over aangepast beleid in het starterspakket in Aan de slag met aangepaste beleidsregels in Active Directory B2C.
Met het element Lokalisatie kunt u meerdere landinstellingen of talen in het beleid voor de gebruikersbelevingen ondersteunen. Met de lokalisatieondersteuning in beleidsregels kunt u het volgende doen:
- Stel de expliciete lijst met ondersteunde talen in een beleid in en kies een standaardtaal.
- Geef taalspecifieke tekenreeksen en verzamelingen op.
<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">
...
Het lokalisatie-element bevat de volgende kenmerken:
Kenmerk | Vereist | Beschrijving |
---|---|---|
Ingeschakeld | No | Mogelijke waarden: true of false . |
Het lokalisatie-element bevat de volgende XML-elementen
Element | Instanties | Description |
---|---|---|
SupportedLanguages | 1:n | Lijst met ondersteunde talen. |
LocalizedResources | 0:n | Lijst met gelokaliseerde resources. |
SupportedLanguages
Het element SupportedLanguages bevat de volgende kenmerken:
Kenmerk | Vereist | Beschrijving |
---|---|---|
DefaultLanguage | Yes | De taal die moet worden gebruikt als de standaardtaal voor gelokaliseerde resources. |
MergeBehavior | No | Een opsommingswaarden van waarden die zijn samengevoegd met een ClaimType dat aanwezig is in een bovenliggend beleid met dezelfde id. Gebruik dit kenmerk wanneer u een claim overschrijft die is opgegeven in het basisbeleid. Mogelijke waarden: Append , Prepend of ReplaceAll . De Append waarde geeft aan dat de verzameling aanwezige gegevens moet worden toegevoegd aan het einde van de verzameling die is opgegeven in het bovenliggende beleid. De Prepend waarde geeft aan dat de verzameling aanwezige gegevens moet worden toegevoegd vóór de verzameling die is opgegeven in het bovenliggende beleid. De ReplaceAll waarde geeft aan dat de verzameling gegevens die in het bovenliggende beleid zijn gedefinieerd, moet worden genegeerd, waarbij in plaats daarvan de gegevens worden gebruikt die zijn gedefinieerd in het huidige beleid. |
SupportedLanguages
Het element SupportedLanguages bevat de volgende elementen:
Element | Instanties | Description |
---|---|---|
SupportedLanguage | 1:n | Geeft inhoud weer die voldoet aan een taaltag per RFC 5646 - Tags voor identificerende talen. |
LocalizedResources
Het element LocalizedResources bevat de volgende kenmerken:
Kenmerk | Vereist | Beschrijving |
---|---|---|
Id | Yes | Een id die wordt gebruikt om gelokaliseerde resources op unieke wijze te identificeren. |
Het element LocalizedResources bevat de volgende elementen:
Element | Instanties | Description |
---|---|---|
GelokaliseerdeCollections | 0:n | Definieert volledige verzamelingen in verschillende culturen. Een verzameling kan een verschillend aantal items en verschillende tekenreeksen voor verschillende culturen hebben. Voorbeelden van verzamelingen zijn de opsommingen die worden weergegeven in claimtypen. Een lijst met landen/regio's wordt bijvoorbeeld weergegeven aan de gebruiker in een vervolgkeuzelijst. |
LocalizedStrings | 0:n | Definieert alle tekenreeksen, met uitzondering van de tekenreeksen die worden weergegeven in verzamelingen, in verschillende culturen. |
GelokaliseerdeCollections
Het element LocalizedCollections bevat de volgende elementen:
Element | Instanties | Description |
---|---|---|
LocalizedCollection | 1:n | Lijst met ondersteunde talen. |
LocalizedCollection
Het element LocalizedCollection bevat de volgende kenmerken:
Kenmerk | Vereist | Beschrijving |
---|---|---|
ElementType | Yes | Verwijst naar een ClaimType-element of een gebruikersinterface-element in het beleidsbestand. |
ElementId | Yes | Een tekenreeks die een verwijzing bevat naar een claimtype dat al is gedefinieerd in de sectie ClaimsSchema die wordt gebruikt als ElementType is ingesteld op een ClaimType. |
TargetCollection | Yes | De doelverzameling. |
Het element LocalizedCollection bevat de volgende elementen:
Element | Instanties | Description |
---|---|---|
Item | 0:n | Hiermee definieert u een beschikbare optie die de gebruiker kan selecteren voor een claim in de gebruikersinterface, zoals een waarde in een vervolgkeuzelijst. |
Het element Item bevat de volgende kenmerken:
Kenmerk | Vereist | Beschrijving |
---|---|---|
Tekst | Yes | De gebruiksvriendelijke weergavetekenreeks die voor deze optie moet worden weergegeven aan de gebruiker in de gebruikersinterface. |
Waarde | Yes | De waarde van de tekenreeksclaim die is gekoppeld aan het selecteren van deze optie. |
SelectByDefault | No | Hiermee wordt aangegeven of deze optie standaard moet worden geselecteerd in de gebruikersinterface. Mogelijke waarden: Waar of Onwaar. |
In het volgende voorbeeld ziet u het gebruik van het element LocalizedCollections . Het bevat twee LocalizedCollection-elementen , één voor Engels en een andere voor Spaans. Beide stellen de beperkingsverzameling van de claim Gender
in met een lijst met items voor Engels en Spaans. Bekijk de livedemo Claimbeperkingsinventarisatie voor meer voorbeelden.
<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
Het element LocalizedStrings bevat de volgende elementen:
Element | Instanties | Description |
---|---|---|
LocalizedString | 1:n | Een gelokaliseerde tekenreeks. |
Het element LocalizedString bevat de volgende kenmerken:
Kenmerk | Vereist | Beschrijving |
---|---|---|
ElementType | Yes | Mogelijke waarden: ClaimsProvider, ClaimType, ErrorMessage, GetLocalizedStringsTransformationClaimType, FormatLocalizedStringTransformationClaimType, Predicate, PredicateValidation of UxElement. |
ElementId | Yes | Als ElementType is ingesteld op ClaimType , Predicate of PredicateValidation , bevat dit element een verwijzing naar een claimtype dat al is gedefinieerd in de sectie ClaimsSchema. |
StringId | Yes | Als ElementType is ingesteld op ClaimType , bevat dit element een verwijzing naar een kenmerk van een claimtype. Mogelijke waarden: DisplayName , AdminHelpText of PatternHelpText . De DisplayName waarde wordt gebruikt om de weergavenaam van de claim in te stellen. De AdminHelpText waarde wordt gebruikt om de naam van de Help-tekst van de claimgebruiker in te stellen. De PatternHelpText waarde wordt gebruikt om de helptekst van het claimpatroon in te stellen. Als ElementType is ingesteld op UxElement , bevat dit element een verwijzing naar een kenmerk van een gebruikersinterface-element. Als ElementType is ingesteld op ErrorMessage , geeft dit element de id van een foutbericht op. Zie Lokalisatietekenreeks-id's voor een volledige lijst met de UxElement id's. |
ElementType
De ElementType-verwijzing naar een claimtype, een claimtransformatie of een gebruikersinterface-element in het beleid dat moet worden gelokaliseerd.
Te lokaliseren element | ElementType | ElementId | StringId |
---|---|---|---|
Naam van id-provider | ClaimsProvider |
De id van het element ClaimsExchange | |
Kenmerken van claimtype | ClaimType |
Naam van het claimtype | Het kenmerk van de claim die moet worden gelokaliseerd. Mogelijke waarden: AdminHelpText , DisplayName , PatternHelpText en UserHelpText . |
Foutbericht | ErrorMessage |
De id van het foutbericht | |
Gelokaliseerde tekenreeksen naar claims kopiëren | GetLocalizedStringsTra nsformationClaimType |
De naam van de uitvoerclaim | |
Predicaat gebruikersbericht | Predicate |
De naam van het predicaat | Het kenmerk van het te lokaliseren predicaat. Mogelijke waarden: HelpText . |
Predicaatgroep gebruikersbericht | PredicateValidation |
De id van het element PredicateValidation. | De id van het element PredicateGroup. De predicaatgroep moet een onderliggend element zijn van het predicaatvalidatie-element zoals gedefinieerd in de ElementId. |
Elementen van de gebruikersinterface | UxElement |
De id van het element van de gebruikersinterface dat moet worden gelokaliseerd. | |
Besturingselement weergeven | DisplayControl |
De id van het weergave-besturingselement. | De id van het element van de gebruikersinterface dat moet worden gelokaliseerd. |
Voorbeelden
ClaimsProvider
De waarde ClaimsProvider wordt gebruikt om een van de weergavenaam van de claimproviders te lokaliseren.
<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>
In het volgende voorbeeld ziet u hoe u de weergavenaam van claimproviders kunt lokaliseren.
<LocalizedString ElementType="ClaimsProvider" StringId="FacebookExchange">Facebook</LocalizedString>
<LocalizedString ElementType="ClaimsProvider" StringId="GoogleExchange">Google</LocalizedString>
<LocalizedString ElementType="ClaimsProvider" StringId="LinkedInExchange">LinkedIn</LocalizedString>
ClaimType
De waarde ClaimType wordt gebruikt om een van de claimkenmerken te lokaliseren.
<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>
In het volgende voorbeeld ziet u hoe u de kenmerken DisplayName, UserHelpText en PatternHelpText van het claimtype e-mail lokaliseert.
<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>
ErrorMessage
De waarde ErrorMessage wordt gebruikt om een van de systeemfoutberichten te lokaliseren.
<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>
In het volgende voorbeeld ziet u hoe u het foutbericht UserMessageIfClaimsPrincipalAlreadyExists kunt lokaliseren.
<LocalizedString ElementType="ErrorMessage" StringId="UserMessageIfClaimsPrincipalAlreadyExists">The account you are trying to create already exists, please sign-in.</LocalizedString>
FormatLocalizedStringTransformationClaimType
De waarde FormatLocalizedStringTransformationClaimType wordt gebruikt om claims op te maken in een gelokaliseerde tekenreeks. Zie FormatLocalizedString-claimtransformatie voor meer informatie
<ClaimsTransformation Id="SetResponseMessageForEmailAlreadyExists" TransformationMethod="FormatLocalizedString">
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" />
</InputClaims>
<InputParameters>
<InputParameter Id="stringFormatId" DataType="string" Value="ResponseMessge_EmailExists" />
</InputParameters>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="responseMsg" TransformationClaimType="outputClaim" />
</OutputClaims>
</ClaimsTransformation>
In het volgende voorbeeld ziet u hoe u de tekenreeksindeling van de claimtransformatie FormatLocalizedStringTransformationClaimType kunt lokaliseren.
<LocalizedString ElementType="FormatLocalizedStringTransformationClaimType" StringId="ResponseMessge_EmailExists">The email '{0}' is already an account in this organization. Click Next to sign in with that account.</LocalizedString>
GetLocalizedStringsTransformationClaimType
De waarde GetLocalizedStringsTransformationClaimType wordt gebruikt om gelokaliseerde tekenreeksen naar claims te kopiëren. Zie GetLocalizedStringsTransformation-claimtransformatie voor meer informatie
<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>
In het volgende voorbeeld ziet u hoe u uitvoerclaims van de claimtransformatie GetLocalizedStringsTransformation kunt lokaliseren.
<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>
Predicaat
De predicaatwaarde wordt gebruikt om een van de foutberichten predicaat te lokaliseren .
<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>
In het volgende voorbeeld ziet u hoe u help-tekst voor predicaten kunt lokaliseren.
<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>
PredicateValidation
De waarde PredicateValidation wordt gebruikt om een van de foutberichten van de PredicateValidation-groep te lokaliseren.
<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>
In het volgende voorbeeld ziet u hoe u helptekst van een predicaatvalidatiegroep kunt lokaliseren.
<LocalizedString ElementType="PredicateValidation" ElementId="CustomPassword" StringId="CharacterClasses">The password must have at least 3 of the following:</LocalizedString>
UxElement
De waarde UxElement wordt gebruikt om een van de elementen van de gebruikersinterface te lokaliseren. In het volgende voorbeeld ziet u hoe u de knoppen Doorgaan en Annuleren kunt lokaliseren.
<LocalizedString ElementType="UxElement" StringId="button_continue">Create new account</LocalizedString>
<LocalizedString ElementType="UxElement" StringId="button_cancel">Cancel</LocalizedString>
DisplayControl
De waarde DisplayControl wordt gebruikt om een van de elementen van de gebruikersinterface van display Control te lokaliseren. Wanneer dit is ingeschakeld, heeft het weergavebeheer localizedStrings voorrang op een aantal string-id's van UxElement , zoals ver_but_send, ver_but_edit, ver_but_resend en ver_but_verify. In het volgende voorbeeld ziet u hoe u de knoppen voor verzenden en controleren kunt lokaliseren.
<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>
In de sectie Metagegevens van een zelf-gecontroleerd technisch profiel moet DataUri zijn ingesteld op pagina-indeling versie 2.1.0 of hoger van de ContentDefinition waarnaar wordt verwezen. Bijvoorbeeld:
<ContentDefinition Id="api.selfasserted">
<DataUri>urn:com:microsoft:aad:b2c:elements:selfasserted:2.1.0</DataUri>
...
Volgende stappen
Zie de volgende artikelen voor voorbeelden van lokalisaties: