Megosztás a következőn keresztül:


Sztring jogcímátalakításai

Ez a cikk példákat tartalmaz az Identity Experience Framework-séma sztring jogcímátalakításainak használatára az Azure Active Directory B2C-ben (Azure AD B2C). További információ: jogcímátalakítások.

AssertStringClaimsAreEqual

Összehasonlít két jogcímet, és kivételt ad, ha azok nem egyenlők a megadott inputClaim1, inputClaim2 és stringComparison szerint.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim1 húr Az első jogcím típusa, amelyet össze kell hasonlítani.
InputClaim inputClaim2 húr A második jogcím típusa, amelyet össze kell hasonlítani.
InputParameter stringComparison húr sztring-összehasonlítás, az egyik érték: Ordinal, OrdinalIgnoreCase.

Az AssertStringClaimsAreEqual jogcímátalakítás mindig egy érvényesítési műszaki profilból történik, amelyet egy önérvényesített műszaki profil vagy egy DisplayControl hív meg. A UserMessageIfClaimsTransformationStringsAreNotEqual felhasználó számára megjelenített hibaüzenetet egy önaláértelmezett műszaki profil metaadatai vezérli. A hibaüzenetek honosíthatók.

Az ábra azt mutatja be, hogyan használhatók az igénysztring-jogcímek egyenlő jogcím-átalakítások.

Példa az AssertStringClaimsAreEqual-ra

Ezzel a jogcímátalakítás használatával meggyőződhet arról, hogy két jogcím azonos értékkel rendelkezik. Ha nem, hibaüzenet jelenik meg. Az alábbi példa ellenőrzi, hogy a strongAuthenticationEmailAddress jogcím egyenlő-e az e-mail-jogcímekkel. Ellenkező esetben hibaüzenet jelenik meg.

<ClaimsTransformation Id="AssertEmailAndStrongAuthenticationEmailAddressAreEqual" TransformationMethod="AssertStringClaimsAreEqual">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="strongAuthenticationEmailAddress" TransformationClaimType="inputClaim1" />
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim2" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="stringComparison" DataType="string" Value="ordinalIgnoreCase" />
  </InputParameters>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim1: someone@contoso.com
    • inputClaim2: someone@outlook.com
  • Bemeneti paraméterek:
    • stringComparison: ordinalIgnoreCase
  • Eredmény: Hiba történt

Az AssertStringClaimsAreEqual jogcímátalakítás meghívása

A login-NonInteractive érvényesítési műszaki profil meghívja az AssertEmailAndStrongAuthenticationEmailAddressAreEqual jogcímátalakítást.

<TechnicalProfile Id="login-NonInteractive">
  ...
  <OutputClaimsTransformations>
    <OutputClaimsTransformation ReferenceId="AssertEmailAndStrongAuthenticationEmailAddressAreEqual" />
  </OutputClaimsTransformations>
</TechnicalProfile>

Az önműködő műszaki profil meghívja az érvényesítési bejelentkezési-NemInteractive technikai profilt.

<TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email">
  <Metadata>
    <Item Key="UserMessageIfClaimsTransformationStringsAreNotEqual">Custom error message the email addresses you provided are not the same.</Item>
  </Metadata>
  <ValidationTechnicalProfiles>
    <ValidationTechnicalProfile ReferenceId="login-NonInteractive" />
  </ValidationTechnicalProfiles>
</TechnicalProfile>

BuildUri

Időt hoz létre az időjelszó (TOTP) URI-ja alapján. Az URI a felhasználó egyedi azonosítójának, például az e-mail-címnek és a titkos kulcsnak a kombinációja. Az URI később QR-kóddá alakul, amelyet a felhasználó bemutat. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim ösvény húr A felhasználó egyedi azonosítója, például e-mail-cím, felhasználónév vagy telefonszám.
InputClaim query.secret húr A TOTP titkos kulcs.
InputParameter cselszövés húr Az URI séma része. Például: otpauth.
InputParameter házigazda húr Az URI séma része. Például: totp.
InputParameter query.issuer húr Az URI kiállítói része. Például: {AuthenticatorIssuer}.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrejött jogcím.

Példa a BuildUri-ra

A következő jogcímátalakítás létrehoz egy TOTP URI-t, amely megjelenik a QR-kódban vagy a mélyhivatkozásban.

<ClaimsTransformation Id="CreateUriString" TransformationMethod="BuildUri">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="uriLabel" TransformationClaimType="path" />
    <InputClaim ClaimTypeReferenceId="secretKey" TransformationClaimType="query.secret" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="scheme" DataType="string" Value="otpauth" />
    <InputParameter Id="host" DataType="string" Value="totp" />
    <InputParameter Id="query.issuer" DataType="string" Value="{AuthenticatorIssuer}" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="qrCodeContent" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • elérési út: emily@fabrikam.com
    • query.secret: fay2lj7ynpntjgqa
  • Bemeneti paraméterek:
    • séma: otpauth
    • gazdagép: totp
    • query.issuer: {AuthenticatorIssuer}
  • Kimeneti jogcímek:
    • outputClaim: otpauth://totp/Contoso%20demo:emily@fabrikam.com?secret=fay2lj7ynpntjgqa&issuer=Contoso+demo

ChangeCase

A megadott jogcím esetét az operátortól függően kisebb vagy nagybetűsre módosítja. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim1 húr A módosítandó jogcím.
InputParameter toCase húr Az alábbi értékek egyike: LOWER vagy UPPER.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrejött jogcím.

Példa a ChangeCasere

Az alábbi jogcímátalakítás kisbetűsre módosítja az e-mail-jogcímet.

<ClaimsTransformation Id="ChangeToLower" TransformationMethod="ChangeCase">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="inputClaim1" />
  </InputClaims>
<InputParameters>
  <InputParameter Id="toCase" DataType="string" Value="LOWER" />
</InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="email" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • e-mail:SomeOne@contoso.com
  • Bemeneti paraméterek:
    • toCase: LOWER
  • Kimeneti jogcímek:
    • e-mail:someone@contoso.com

CompareClaims

Meghatározza, hogy az egyik sztring-jogcím egyenlő-e egy másikhoz. Az eredmény egy új logikai jogcím, amelynek értéke vagy falseértéke true . Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim1 húr Első jogcímtípus, amelyet össze kell hasonlítani.
InputClaim inputClaim2 húr Második jogcímtípus, amelyet össze kell hasonlítani.
InputParameter operator húr Lehetséges értékek: EQUAL vagy NOT EQUAL.
InputParameter ignoreCase húr Megadja, hogy az összehasonlítás figyelmen kívül hagyja-e az összehasonlítandó sztringek esetét.
OutputClaim outputClaim Logikai A jogcímátalakítás meghívása után létrejött jogcím.

Példa a CompareClaimsre

Ezzel a jogcímátalakítással ellenőrizheti, hogy egy jogcím egyenlő-e egy másik jogcímtel. Az alábbi jogcímátalakítás ellenőrzi, hogy az e-mail-jogcím értéke megegyezik-e a Verified.Email jogcímével.

<ClaimsTransformation Id="CheckEmail" TransformationMethod="CompareClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="Email" TransformationClaimType="inputClaim1" />
    <InputClaim ClaimTypeReferenceId="Verified.Email" TransformationClaimType="inputClaim2" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="operator" DataType="string" Value="NOT EQUAL" />
    <InputParameter Id="ignoreCase" DataType="string" Value="true" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="SameEmailAddress" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim1: someone@contoso.com
    • inputClaim2: someone@outlook.com
  • Bemeneti paraméterek:
    • operátor: NEM EGYENLŐ
    • ignoreCase: true
  • Kimeneti jogcímek:
    • outputClaim: true

CompareClaimToValue

Meghatározza, hogy a jogcím értéke megegyezik-e a bemeneti paraméter értékével. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim1 húr A jogcím típusa, amelyet össze kell hasonlítani.
InputParameter operator húr Lehetséges értékek: EQUAL vagy NOT EQUAL.
InputParameter compareTo húr Sztring-összehasonlítás, az egyik érték, vagyis az a sztring, amelyhez a bemeneti jogcím értékeit össze kell hasonlítani: Ordinal, OrdinalIgnoreCase.
InputParameter ignoreCase húr Megadja, hogy az összehasonlítás figyelmen kívül hagyja-e az összehasonlítandó sztringek esetét.
OutputClaim outputClaim Logikai A jogcímátalakítás meghívása után létrejött jogcím.

Példa a CompareClaimToValue-ra

Ezzel a jogcímátalakítással ellenőrizheti, hogy egy jogcím megegyezik-e a megadott értékkel. Az alábbi jogcímátalakítás például ellenőrzi, hogy a termsOfUseConsentVersion jogcím értéke egyenlő-e.V2

<ClaimsTransformation Id="IsTermsOfUseConsentRequiredForVersion" TransformationMethod="CompareClaimToValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="termsOfUseConsentVersion" TransformationClaimType="inputClaim1" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="compareTo" DataType="string" Value="V2" />
    <InputParameter Id="operator" DataType="string" Value="NOT EQUAL" />
    <InputParameter Id="ignoreCase" DataType="string" Value="true" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="termsOfUseConsentRequired" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim1: v1
  • Bemeneti paraméterek:
    • compareTo: V2
    • operátor: NEM EGYENLŐ
    • ignoreCase: true
  • Kimeneti jogcímek:
    • outputClaim: true

CopyClaimIfPredicateMatch

Egy jogcím értékét egy másiknak másolja, ha a bemeneti jogcím értéke megegyezik a kimeneti jogcím predikátumával. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr A másolandó jogcím típusa.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrehozott jogcímtípus. A bemeneti jogcím értéke ezzel a jogcím-predikátumtal van ellenőrizve.

Példa a CopyClaimIfPredicateMatchre

Az alábbi példa megpróbálja átmásolni a signInName jogcím értékét a phoneNumber jogcímre. Ebben a példában az érték nem lesz másolva. A signInName jogcím nem a várt formátumban, telefonszámban található. A teljes minta Telefon szám- vagy e-mail-bejelentkezési kezdőcsomag-szabályzatban található.

<ClaimsTransformation Id="SetPhoneNumberIfPredicateMatch" TransformationMethod="CopyClaimIfPredicateMatch">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="signInName" TransformationClaimType="inputClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: bob@contoso.com
  • Kimeneti jogcímek:
    • outputClaim: A kimeneti jogcím nem változik az eredeti értékétől.

Példa a CopyClaimIfPredicateMatchre, amely a predikátumot módosítja

Ebben a példában a jogcímátalakítás másolja az értéket. A signInName jogcím formátuma és telefonszáma megfelelő.

  • Bemeneti jogcímek:
    • inputClaim: +11234567890
  • Kimeneti jogcímek:
    • outputClaim: +11234567890

CreateOtpSecret

Létrehoz egy TOTP-sztring jogcímet. A jogcímátalakítás kimenete egy TOTP-titkos kód, amely később az Azure AD B2C-felhasználó fiókjában lesz tárolva, és meg van osztva a Microsoft Authenticator alkalmazással. A hitelesítő alkalmazás a kulccsal hoz létre TOTP-kódokat, amikor a felhasználónak át kell mennie az MFA-n. A szabályzat a kulccsal ellenőrzi a felhasználó által megadott TOTP-kódot.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrehozott jogcím a létrehozott TOTP-kóddal.

Példa a CreateOtpSecretretre

Az alábbi jogcímátalakítás létrehoz egy titkos kulcsot a TOTP többtényezős hitelesítéshez.

<ClaimsTransformation Id="CreateSecret" TransformationMethod="CreateOtpSecret">
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="secretKey" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Kimeneti jogcímek:
    • outputClaim: hmlcmd4ph6fph64c

CreateRandomString

Véletlenszerű sztringet hoz létre a véletlenszerű számgenerátor használatával. Ha a véletlenszerű számgenerátor típusa típus integer, opcionálisan megadható egy magparaméter és egy maximális szám. Az opcionális sztringformátum paraméter lehetővé teszi a kimenet formázását a használatával, és egy opcionális base64 paraméter határozza meg, hogy a kimenet base64 kódolású randomGeneratorType [guid, egész szám] outputClaim (String).

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputParameter randomGeneratorType húr Megadja a létrehozandó GUID véletlenszerű értéket (globális egyedi azonosító) vagy INTEGER (szám).
InputParameter stringFormat húr [Nem kötelező] Formázza a véletlenszerű értéket.
InputParameter base64 Logikai [Nem kötelező] Konvertálja a véletlenszerű értéket base64 értékre. Sztringformátum alkalmazása esetén a sztringformátum utáni érték a base64-be lesz kódolva.
InputParameter maximális szám egész [Nem kötelező] Csak randomGeneratorType esetén INTEGER . Adja meg a maximális számot.
InputParameter Vetőmag egész [Nem kötelező] Csak randomGeneratorType esetén INTEGER . Adja meg a véletlenszerű értékhez tartozó magot. Megjegyzés: ugyanaz a vetőmag ugyanazt a véletlenszerű számsort eredményezi.
OutputClaim outputClaim húr Azok a jogcímek, amelyek a jogcímátalakítás meghívása után lesznek létrehozva. A véletlenszerű érték.

Példa a CreateRandomStringre

Az alábbi példa egy globális egyedi azonosítót hoz létre. Ez a jogcímátalakítás a véletlenszerű UPN (felhasználónév) létrehozására szolgál.

<ClaimsTransformation Id="CreateRandomUPNUserName" TransformationMethod="CreateRandomString">
  <InputParameters>
    <InputParameter Id="randomGeneratorType" DataType="string" Value="GUID" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="upnUserName" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti paraméterek:
    • randomGeneratorType: GUID
  • Kimeneti jogcímek:
    • outputClaim: bc8bedd2-aaa3-411e-bdee-2f1810b73dfc

Példa a CreateRandomString numerikus érték létrehozására

Az alábbi példa egy 0 és 1000 közötti egész szám véletlenszerű értéket hoz létre. Az érték OTP_{random value} értékre van formázva.

<ClaimsTransformation Id="SetRandomNumber" TransformationMethod="CreateRandomString">
  <InputParameters>
    <InputParameter Id="randomGeneratorType" DataType="string" Value="INTEGER" />
    <InputParameter Id="maximumNumber" DataType="int" Value="1000" />
    <InputParameter Id="stringFormat" DataType="string" Value="OTP_{0}" />
    <InputParameter Id="base64" DataType="boolean" Value="false" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="randomNumber" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti paraméterek:
    • randomGeneratorType: EGÉSZ SZÁM
    • maximális szám: 1000
    • stringFormat: OTP_{0}
    • base64: false
  • Kimeneti jogcímek:
    • outputClaim: OTP_853

CreateStringClaim

Sztring jogcímet hoz létre az átalakításban megadott bemeneti paraméterből. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputParameter Érték húr A beállítani kívánt sztring. Ez a bemeneti paraméter támogatja a sztring jogcím-átalakítási kifejezéseit.
OutputClaim createdClaim húr A jogcímátalakítás meghívása után létrehozott jogcím a bemeneti paraméterben megadott értékkel.

Példa a CreateStringClaim-ra

A következő jogcímátalakítás sztringértéket hoz létre a szolgáltatási feltételekkel.

<ClaimsTransformation Id="CreateTermsOfService" TransformationMethod="CreateStringClaim">
  <InputParameters>
    <InputParameter Id="value" DataType="string" Value="Contoso terms of service..." />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="TOS" TransformationClaimType="createdClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti paraméter:
    • érték: Contoso szolgáltatási feltételek...
  • Kimeneti jogcímek:
    • createdClaim: A TOS-jogcím tartalmazza a "Contoso szolgáltatási feltételeit..." Érték.

FormatLocalizedString

Több jogcím formázása egy megadott honosított formátumsztring szerint. Ez az átalakítás a C# String.Format metódust használja. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaims húr A sztringformátumként {0}, {1}{2} paraméterekként működő bemeneti jogcímek gyűjteménye.
InputParameter stringFormatId húr Egy StringId honosított sztring.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrejött jogcím.

Feljegyzés

A megadható bemeneti jogcímek száma nincs korlátozva, de a formázott sztring maximális hossza 4000.

A FormatLocalizedString jogcímátalakítás használata:

  1. Definiáljon egy honosítási sztringet, és társítsa egy önérvényesítő-technikai profillal.
  2. Az ElementType elemnek a LocalizedString következőre kell állítania: FormatLocalizedStringTransformationClaimType.
  3. Ez StringId egy ön által definiált egyedi azonosító, amelyet később használ a jogcímátalakítás stringFormatIdsorán.
  4. A jogcímátalakítás során adja meg a honosított sztringgel beállítani kívánt jogcímek listáját. Ezután állítsa a stringFormatIdStringId honosított sztringelemre.
  5. Egy önaláírt műszaki profilban, illetve egy megjelenítési vezérlő bemeneti vagy kimeneti jogcímátalakításában hivatkozzon a jogcímek átalakítására.

Példa a FormatLocalizedStringre

Az alábbi példa hibaüzenetet jelenít meg, ha egy fiók már szerepel a címtárban. A példa az angol (alapértelmezett) és a spanyol nyelv honosított sztringeit határozza meg.

<Localization Enabled="true">
  <SupportedLanguages DefaultLanguage="en" MergeBehavior="Append">
    <SupportedLanguage>en</SupportedLanguage>
    <SupportedLanguage>es</SupportedLanguage>
   </SupportedLanguages>

  <LocalizedResources Id="api.localaccountsignup.en">
    <LocalizedStrings>
      <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>
      </LocalizedStrings>
    </LocalizedResources>
  <LocalizedResources Id="api.localaccountsignup.es">
    <LocalizedStrings>
      <LocalizedString ElementType="FormatLocalizedStringTransformationClaimType" StringId="ResponseMessge_EmailExists">Este correo electrónico "{0}" ya es una cuenta de esta organización. Haga clic en Siguiente para iniciar sesión con esa cuenta.</LocalizedString>
    </LocalizedStrings>
  </LocalizedResources>
</Localization>

A jogcímátalakítás egy válaszüzenetet hoz létre a honosított sztring alapján. Az üzenet tartalmazza a felhasználó e-mail-címét a honosított ResponseMessge_EmailExists.

<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>
  • Bemeneti jogcímek:
    • inputClaim: sarah@contoso.com
  • Bemeneti paraméterek:
    • stringFormat: ResponseMessge_EmailExists
  • Kimeneti jogcímek:
    • outputClaim: Az "sarah@contoso.com" e-mail már egy fiók ebben a szervezetben. Válassza a Tovább lehetőséget a fiókkal való bejelentkezéshez.

FormatStringClaim

Jogcím formázása a megadott formátumsztring szerint. Ez az átalakítás a C# String.Format metódust használja. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr A sztringformátum {0} paraméterként működő jogcím.
InputParameter stringFormat húr A sztring formátuma, beleértve a paramétert {0} is. Ez a bemeneti paraméter támogatja a sztring jogcím-átalakítási kifejezéseit.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrejött jogcím.

Feljegyzés

A sztringformátum megengedett maximális mérete 4000.

Példa a FormatStringClaim-ra

Ezzel a jogcímátalakítással bármilyen sztringet formázhat egyetlen paraméterrel {0}. Az alábbi példa létrehoz egy userPrincipalName nevet. Az összes közösségi identitásszolgáltató technikai profilja, például Facebook-OAUTH a CreateUserPrincipalName meghívása a userPrincipalName létrehozásához.

<ClaimsTransformation Id="CreateUserPrincipalName" TransformationMethod="FormatStringClaim">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="upnUserName" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="stringFormat" DataType="string" Value="cpim_{0}@{RelyingPartyTenantId}" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="userPrincipalName" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: 5164db16-3eee-4629-bfda-dcc3326790e9
  • Bemeneti paraméterek:
    • stringFormat: cpim_{0}@{RelyingPartyTenantId}
  • Kimeneti jogcímek:
    • outputClaim: cpim_5164db16-3eee-4629-bfda-dcc3326790e9@b2cdemo.onmicrosoft.com

FormatStringMultipleClaims

Két jogcím formázása a megadott formátumsztring szerint. Ez az átalakítás a C# String.Format metódust használja. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim1 húr A sztringformátum {0} paraméterként működő jogcím.
InputClaim inputClaim2 húr A sztringformátum {1} paraméterként működő jogcím.
InputParameter stringFormat húr A sztring formátuma, beleértve a paramétereket és {1} a {0} paramétereket is. Ez a bemeneti paraméter támogatja a sztring jogcím-átalakítási kifejezéseit.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrejött jogcím.

Feljegyzés

A sztringformátum megengedett maximális mérete 4000.

Példa a FormatStringMultipleClaimsre

Ezzel a jogcímátalakítással bármilyen sztringet formázhat két paraméterrel és {0}{1}. Az alábbi példa egy displayName értéket hoz létre a megadott formátumban:

<ClaimsTransformation Id="CreateDisplayNameFromFirstNameAndLastName" TransformationMethod="FormatStringMultipleClaims">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="givenName" TransformationClaimType="inputClaim1" />
    <InputClaim ClaimTypeReferenceId="surName" TransformationClaimType="inputClaim2" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="stringFormat" DataType="string" Value="{0} {1}" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="displayName" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim1: Joe
    • inputClaim2: Fernando
  • Bemeneti paraméterek:
    • stringFormat: {0}{1}
  • Kimeneti jogcímek:
    • outputClaim: Joe Fernando

GetLocalizedStringsTransformation

Honosított sztringeket másol jogcímekbe. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
OutputClaim A honosított sztring neve húr A jogcímátalakítás meghívása után létrehozott jogcímtípusok listája.

A GetLocalizedStringsTransformation jogcímátalakítás használata:

  1. Adjon meg egy honosítási sztringet a tartalomdefinícióhoz, példáulapi.selfasserted.

  2. Az ElementType elemnek a LocalizedString következőre kell állítania: GetLocalizedStringsTransformationClaimType.

  3. Ez StringId egy ön által definiált egyedi azonosító, amelyet később használhat a jogcímátalakítás során.

  4. A jogcímátalakítás során adja meg a honosított sztringgel beállítani kívánt jogcímek listáját. Ez ClaimTypeReferenceId egy olyan jogcímre való hivatkozás, amely már definiálva van a szabályzat ClaimsSchema szakaszában. Az TransformationClaimType elemben StringIdLocalizedString definiált honosított sztring neve.

  5. Az önaláírással vagy jogcímátalakítással kapcsolatos műszaki profil jogcímátalakításában hivatkozzon a jogcímek átalakítására.

  6. A technikai profil társítása a tartalomdefinícióval, például api.selfasserted. Az alábbi példa bemutatja, hogyan társíthat technikai profilt a api.selfasserted tartalomdefinícióhoz.

    <Metadata>
      <Item Key="ContentDefinitionReferenceId">api.selfasserted</Item>
    </Metadata>
    

Az alábbi ábra bemutatja, hogyan konfigurálható a jogcímátalakítás a honosítási elemekkel:

Az ábra bemutatja, hogyan használható a honosított sztringek jogcímátalakítása.

Példa a GetLocalizedStringsTransformationra

Az alábbi példa honosított sztringekből keresi meg az e-mail tárgyát, törzsét, a kódüzenetét és az e-mail aláírását. Az egyéni e-mail-ellenőrző sablon által később használt jogcímek.

Honosított sztringek definiálása az angol (alapértelmezett) és a spanyol nyelvhez.

<Localization Enabled="true">
  <SupportedLanguages DefaultLanguage="en" MergeBehavior="Append">
    <SupportedLanguage>en</SupportedLanguage>
    <SupportedLanguage>es</SupportedLanguage>
   </SupportedLanguages>

  <LocalizedResources Id="api.localaccountsignup.en">
    <LocalizedStrings>
      <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>
     </LocalizedStrings>
   </LocalizedResources>
   <LocalizedResources Id="api.localaccountsignup.es">
     <LocalizedStrings>
      <LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_subject">Código de verificación del correo electrónico de la cuenta de Contoso</LocalizedString>
      <LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_message">Gracias por comprobar la cuenta de </LocalizedString>
      <LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_code">Su código es</LocalizedString>
      <LocalizedString ElementType="GetLocalizedStringsTransformationClaimType" StringId="email_signature">Atentamente</LocalizedString>
    </LocalizedStrings>
  </LocalizedResources>
</Localization>

A jogcímátalakítás a jogcímtípus tárgyát képező értéket a email_subject értékével állítja StringIdbe.

<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>
  • Kimeneti jogcímek:
    • tárgy: Contoso-fiók e-mail-ellenőrző kódja
    • üzenet: Köszönjük, hogy ellenőrizte a fiókját!
    • codeIntro: A kód a következő:
    • aláírás: Üdvözlet

GetMappedValueFromLocalizedCollection

egy elem Térképek a bemeneti jogcímből Korlátozásgyűjtés. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim mapFromClaim húr A restrictionValueClaim jogcímekben keresendő szöveget tartalmazó jogcím a Korlátozás gyűjteményben.
OutputClaim restrictionValueClaim húr A Korlátozás gyűjteményt tartalmazó jogcím. A jogcímátalakítás meghívása után a jogcím értéke tartalmazza a kiválasztott elem értékét.

Példa a GetMappedValueFromLocalizedCollectionre

Az alábbi példa a hibakulcs alapján keresi meg a hibaüzenet leírását. A responseMsg-jogcím a végfelhasználónak megjelenítendő vagy a függő entitásnak küldendő hibaüzenetek gyűjteményét tartalmazza.

<ClaimType Id="responseMsg">
  <DisplayName>Error message: </DisplayName>
  <DataType>string</DataType>
  <UserInputType>Paragraph</UserInputType>
  <Restriction>
    <Enumeration Text="B2C_V1_90001" Value="You cannot sign in because you are a minor" />
    <Enumeration Text="B2C_V1_90002" Value="This action can only be performed by gold members" />
    <Enumeration Text="B2C_V1_90003" Value="You have not been enabled for this operation" />
  </Restriction>
</ClaimType>

A jogcímátalakítás megkeresi az elem szövegét, és visszaadja annak értékét. Ha a korlátozás lokalizálva <LocalizedCollection>van, a jogcímátalakítás a honosított értéket adja vissza.

<ClaimsTransformation Id="GetResponseMsgMappedToResponseCode" TransformationMethod="GetMappedValueFromLocalizedCollection">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="responseCode" TransformationClaimType="mapFromClaim" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="responseMsg" TransformationClaimType="restrictionValueClaim" />        
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • mapFromClaim: B2C_V1_90001
  • Kimeneti jogcímek:
    • restrictionValueClaim: Nem tud bejelentkezni, mert ön kiskorú.

LookupValue

Egy jogcímérték keresése az értékek listájából egy másik jogcím értéke alapján. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputParameterId húr A keresési értéket tartalmazó jogcím
InputParameter húr InputParameterek gyűjteménye.
InputParameter errorOnFailedLookup Logikai Annak szabályozása, hogy a hiba akkor jelenik-e meg, ha nincs egyező keresés.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után előállítandó jogcím. Az egyező Idérték.

Példa a LookupValue-ra

Az alábbi példa megkeresi a tartománynevet az egyik inputParameters-gyűjteményben. A jogcímátalakítás megkeresi a tartománynevet az azonosítóban, és visszaadja annak értékét (egy alkalmazásazonosítót).

 <ClaimsTransformation Id="DomainToClientId" TransformationMethod="LookupValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="domainName" TransformationClaimType="inputParameterId" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="contoso.com" DataType="string" Value="13c15f79-8fb1-4e29-a6c9-be0d36ff19f1" />
    <InputParameter Id="microsoft.com" DataType="string" Value="0213308f-17cb-4398-b97e-01da7bd4804e" />
    <InputParameter Id="test.com" DataType="string" Value="c7026f88-4299-4cdb-965d-3f166464b8a9" />
    <InputParameter Id="errorOnFailedLookup" DataType="boolean" Value="false" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="domainAppId" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputParameterId: test.com
  • Bemeneti paraméterek:
    • contoso.com: 13c15f79-8fb1-4e29-a6c9-be0d36ff19f1
    • microsoft.com: 0213308f-17cb-4398-b97e-01da7bd4804e
    • test.com: c7026f88-4299-4cdb-965d-3f166464b8a9
    • errorOnFailedLookup: false
  • Kimeneti jogcímek:
    • outputClaim: c7026f88-4299-4cdb-965d-3f166464b8a9

Példa a LookupValue hibával

A bemeneti paraméter beállításakor a LookupValue jogcímátalakítás mindig egy önaláírt műszaki profil vagy Egy DisplayConrtol által hívott érvényesítési műszaki profilból lesz végrehajtva.errorOnFailedLookuptrue A LookupNotFound felhasználó számára megjelenített hibaüzenetet egy önaláértelmezett műszaki profil metaadatai vezérli.

A diagram bemutatja, hogyan használhatja a keresési érték jogcímeinek átalakítását.

Az alábbi példa megkeresi a tartománynevet az egyik inputParameters-gyűjteményben. A jogcímátalakítás megkeresi a tartománynevet az azonosítóban, és visszaadja annak értékét (egy alkalmazásazonosítót), vagy hibaüzenetet ad.

 <ClaimsTransformation Id="DomainToClientId" TransformationMethod="LookupValue">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="domainName" TransformationClaimType="inputParameterId" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="contoso.com" DataType="string" Value="13c15f79-8fb1-4e29-a6c9-be0d36ff19f1" />
    <InputParameter Id="microsoft.com" DataType="string" Value="0213308f-17cb-4398-b97e-01da7bd4804e" />
    <InputParameter Id="test.com" DataType="string" Value="c7026f88-4299-4cdb-965d-3f166464b8a9" />
    <InputParameter Id="errorOnFailedLookup" DataType="boolean" Value="true" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="domainAppId" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputParameterId: live.com
  • Bemeneti paraméterek:
    • contoso.com: 13c15f79-8fb1-4e29-a6c9-be0d36ff19f1
    • microsoft.com: 0213308f-17cb-4398-b97e-01da7bd4804e
    • test.com: c7026f88-4299-4cdb-965d-3f166464b8a9
    • errorOnFailedLookup: true
  • Hiba:
    • Nem található egyezés a bemeneti jogcím értékével a bemeneti paraméter azonosítóinak listájában, és az ErrorOnFailedLookup értéke igaz.

Null igénylés

Törli egy adott jogcím értékét. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
OutputClaim claim_to_null húr A jogcím értéke NULL értékre van állítva.

Példa NullClaim-ra

A jogcímátalakítás használatával eltávolíthatja a szükségtelen adatokat a jogcímtulajdonság-zsákból, így a munkamenet-cookie kisebb lesz. Az alábbi példa eltávolítja a jogcímtípus értékét TermsOfService .

<ClaimsTransformation Id="SetTOSToNull" TransformationMethod="NullClaim">
  <OutputClaims>
  <OutputClaim ClaimTypeReferenceId="TermsOfService" TransformationClaimType="claim_to_null" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • outputClaim: Üdvözli a Contoso App. Ha továbbra is böngészik és használják ezt a webhelyet, ön elfogadja, hogy betartja és magára nézve kötelezőnek ismeri el az alábbi feltételeket és feltételeket...
  • Kimeneti jogcímek:
    • outputClaim: NULL

ParseDomain

Lekéri egy e-mail-cím tartományrészét. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim emailAddress húr Az e-mail-címet tartalmazó jogcím.
OutputClaim domain húr A jogcímátalakítás meghívása után létrehozott jogcím – a tartomány.

Példa a ParseDomain-ra

A jogcímátalakítás használatával elemezze a tartománynevet a felhasználó @ szimbóluma után. Az alábbi jogcímátalakítás bemutatja, hogyan elemezhet tartománynevet egy e-mail-jogcímből .

<ClaimsTransformation Id="SetDomainName" TransformationMethod="ParseDomain">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="emailAddress" />
  </InputClaims>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="domainName" TransformationClaimType="domain" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • emailAddress: joe@outlook.com
  • Kimeneti jogcímek:
    • tartomány: outlook.com

SetClaimIfBooleansMatch

Ellenőrzi, hogy logikai jogcím vagy truefalse. Ha igen, a kimeneti jogcímeket a bemeneti paraméterben található értékkel állítja outputClaimIfMatched be. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim claimToMatch húr Az ellenőrizni kívánt jogcímtípus. A null érték kivételt eredményez.
InputParameter matchTo húr A bemeneti jogcímmel claimToMatch összehasonlítandó érték. Lehetséges értékek: truevagy false.
InputParameter outputClaimIfMatched húr A beírandó érték, ha a bemeneti jogcím megegyezik a matchTo bemeneti paraméterével.
OutputClaim outputClaim húr Ha a claimToMatch bemeneti jogcím megegyezik a matchTo bemeneti paraméterével, ez a kimeneti jogcím tartalmazza a bemeneti paraméter értékét outputClaimIfMatched .

Példa a SetClaimIfBooleansMatchre

Az alábbi jogcímátalakítás például ellenőrzi, hogy a hasPromotionCode jogcím értéke egyenlő-e.true Ha igen, adja vissza az értéket a promóciós kódnak , amely nem található.

<ClaimsTransformation Id="GeneratePromotionCodeError" TransformationMethod="SetClaimIfBooleansMatch">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="hasPromotionCode" TransformationClaimType="claimToMatch" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="matchTo" DataType="string" Value="true" />
    <InputParameter Id="outputClaimIfMatched" DataType="string" Value="Promotion code not found." />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="promotionCode" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • claimToMatch: true
  • Bemeneti paraméterek:
    • matchTo: true
    • outputClaimIfMatched: "A promóciós kód nem található."
  • Kimeneti jogcímek:
    • outputClaim: "Promóciós kód nem található."

SetClaimsIfRegexMatch

Ellenőrzi, hogy egy sztring jogcíme claimToMatch és matchTo bemeneti paramétere egyenlő-e, és beállítja a kimeneti jogcímeket a bemeneti paraméterben outputClaimIfMatched található értékkel, valamint összehasonlítja az eredménykimeneti jogcímet, amelyet az összehasonlítás eredményeként true vagy false alapján kell beállítani.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
inputClaim claimToMatch húr Az összehasonlítandó jogcímtípus.
InputParameter matchTo húr Az egyező reguláris kifejezés.
InputParameter outputClaimIfMatched húr A sztringek egyenlő értékének beállítása.
InputParameter extractGroups Logikai [Nem kötelező] Megadja, hogy a Regex-egyezésnek ki kell-e nyernie a csoportok értékeit. Lehetséges értékek: truevagy false (alapértelmezett).
OutputClaim outputClaim húr Ha a reguláris kifejezés egyezik, ez a kimeneti jogcím a bemeneti paraméter értékét outputClaimIfMatched tartalmazza. Vagy null, ha nincs egyezés.
OutputClaim regexCompareResultClaim Logikai A reguláris kifejezés megfelel az eredmény kimeneti jogcímtípusának, amelyet az egyeztetés eredményeként true vagy false alapján kell beállítani.
OutputClaim A jogcím neve húr Ha az extractGroups bemeneti paraméter értéke igaz, azoknak a jogcímtípusoknak a listája, amelyek a jogcímátalakítás meghívása után jönnek létre. A jogcím nevének meg kell egyeznie a Regex-csoport nevével.

Példa a SetClaimsIfRegexMatchre

Ellenőrzi, hogy a megadott telefonszám érvényes-e a telefonszám normál kifejezési mintája alapján.

<ClaimsTransformation Id="SetIsPhoneRegex" TransformationMethod="SetClaimsIfRegexMatch">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="phone" TransformationClaimType="claimToMatch" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="matchTo" DataType="string" Value="^[0-9]{4,16}$" />
    <InputParameter Id="outputClaimIfMatched" DataType="string" Value="iPhone" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="validationResult" TransformationClaimType="outputClaim" />
    <OutputClaim ClaimTypeReferenceId="isPhoneBoolean" TransformationClaimType="regexCompareResultClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • claimToMatch: "64854114520"
  • Bemeneti paraméterek:
    • matchTo: "^[0-9]{4,16}$"
    • outputClaimIfMatched: "Telefon"
  • Kimeneti jogcímek:
    • outputClaim: "i Telefon"
    • regexCompareResultClaim: true

Példa SetClaimsIfRegexMatch kivonatcsoportokkal

Ellenőrzi, hogy a megadott e-mail-cím érvényes-e, és visszaadja az e-mail-aliast. Tekintse meg a jogcímátalakítás élő bemutatóját a kinyert csoportokkal.

<ClaimsTransformation Id="GetAliasFromEmail" TransformationMethod="SetClaimsIfRegexMatch">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="email" TransformationClaimType="claimToMatch" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="matchTo" DataType="string" Value="(?&lt;mailAlias&gt;.*)@(.*)$" />
    <InputParameter Id="outputClaimIfMatched" DataType="string" Value="isEmail" />
    <InputParameter Id="extractGroups" DataType="boolean" Value="true" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="validationResult" TransformationClaimType="outputClaim" />
    <OutputClaim ClaimTypeReferenceId="isEmailString" TransformationClaimType="regexCompareResultClaim" />
    <OutputClaim ClaimTypeReferenceId="mailAlias" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • claimToMatch: "emily@contoso.com"
  • Bemeneti paraméterek:
    • matchTo: (?&lt;mailAlias&gt;.*)@(.*)$
    • outputClaimIfMatched: "isEmail"
    • extractGroups: true
  • Kimeneti jogcímek:
    • outputClaim: "isEmail"
    • regexCompareResultClaim: true
    • mailAlias: emily

SetClaimsIfStringsAreEqual

Ellenőrzi, hogy egy sztring jogcíme és matchTo bemeneti paramétere egyenlő-e, és beállítja a kimeneti jogcímeket a jelen lévő stringMatchMsg értékkel és stringMatchMsgCode a bemeneti paraméterekkel, valamint összehasonlítja az eredménykimeneti jogcímet, amelyet az összehasonlítás eredményeként true vagy false alapján kell beállítani.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr Az összehasonlítandó jogcímtípus.
InputParameter matchTo húr Az összehasonlítandó sztring inputClaim.
InputParameter stringComparison húr Lehetséges értékek: Ordinal vagy OrdinalIgnoreCase.
InputParameter stringMatchMsg húr A sztringek egyenlőségének első beállítása.
InputParameter stringMatchMsgCode húr Második érték, amely akkor állítható be, ha a sztringek egyenlők.
OutputClaim outputClaim1 húr Ha a sztringek egyenlők, ez a kimeneti jogcím a bemeneti paraméter értékét stringMatchMsg tartalmazza.
OutputClaim outputClaim2 húr Ha a sztringek egyenlők, ez a kimeneti jogcím a bemeneti paraméter értékét stringMatchMsgCode tartalmazza.
OutputClaim stringCompareResultClaim Logikai Az összehasonlítási eredmény kimeneti jogcímtípusa, amelyet az összehasonlítás eredményeként true vagy false alapján kell beállítani.

Példa a SetClaimsIfStringsAreEqual-ra

Ezzel a jogcímátalakítással ellenőrizheti, hogy egy jogcím megegyezik-e a megadott értékkel. Az alábbi jogcímátalakítás például ellenőrzi, hogy a termsOfUseConsentVersion jogcím értéke egyenlő-e.v1 Ha igen, módosítsa az értéket a következőre v2: .

<ClaimsTransformation Id="CheckTheTOS" TransformationMethod="SetClaimsIfStringsAreEqual">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="termsOfUseConsentVersion" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="matchTo" DataType="string" Value="v1" />
    <InputParameter Id="stringComparison" DataType="string" Value="ordinalIgnoreCase" />
    <InputParameter Id="stringMatchMsgCode" DataType="string" Value="B2C_V1_90005" />
    <InputParameter Id="stringMatchMsg" DataType="string" Value="The TOS is upgraded to v2" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="termsOfUseConsentVersion" TransformationClaimType="outputClaim1" />
    <OutputClaim ClaimTypeReferenceId="termsOfUseConsentVersionUpgradeCode" TransformationClaimType="outputClaim2" />
    <OutputClaim ClaimTypeReferenceId="termsOfUseConsentVersionUpgradeResult" TransformationClaimType="stringCompareResultClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: v1
  • Bemeneti paraméterek:
    • matchTo: V1
    • stringComparison: ordinalIgnoreCase
    • stringMatchMsgCode: B2C_V1_90005
    • stringMatchMsg: A TOS 2-re frissül
  • Kimeneti jogcímek:
    • outputClaim1: B2C_V1_90005
    • outputClaim2: A TOS v2-re frissül
    • stringCompareResultClaim: true

SetClaimsIfStringsMatch

Ellenőrzi, hogy egy sztring jogcíme és matchTo bemeneti paramétere egyenlő-e, és beállítja a kimeneti jogcímeket a bemeneti paraméterben outputClaimIfMatched található értékkel, valamint összehasonlítja az eredménykimeneti jogcímet, amelyet az összehasonlítás eredményeként true vagy false alapján kell beállítani.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim claimToMatch húr Az összehasonlítandó jogcímtípus.
InputParameter matchTo húr Az inputClaim karakterrel összehasonlítandó sztring.
InputParameter stringComparison húr Lehetséges értékek: Ordinal vagy OrdinalIgnoreCase.
InputParameter outputClaimIfMatched húr A sztringek egyenlő értékének beállítása.
OutputClaim outputClaim húr Ha a sztringek egyenlők, ez a kimeneti jogcím a bemeneti paraméter értékét outputClaimIfMatched tartalmazza. Vagy null, ha a sztringek nem egyeznek.
OutputClaim stringCompareResultClaim Logikai Az összehasonlítási eredmény kimeneti jogcímtípusa, amelyet az összehasonlítás eredményeként true vagy false alapján kell beállítani.

Példa a SetClaimsIfStringsMatchre

Az alábbi jogcímátalakítás például ellenőrzi, hogy az ageGroup-jogcím értéke egyenlő-eMinor. Ha igen, adja vissza az értéket a következőnek B2C_V1_90001: .

<ClaimsTransformation Id="SetIsMinor" TransformationMethod="SetClaimsIfStringsMatch">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="ageGroup" TransformationClaimType="claimToMatch" />
  </InputClaims>
  <InputParameters>
    <InputParameter Id="matchTo" DataType="string" Value="Minor" />
    <InputParameter Id="stringComparison" DataType="string" Value="ordinalIgnoreCase" />
    <InputParameter Id="outputClaimIfMatched" DataType="string" Value="B2C_V1_90001" />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="isMinor" TransformationClaimType="outputClaim" />
    <OutputClaim ClaimTypeReferenceId="isMinorResponseCode" TransformationClaimType="stringCompareResultClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • claimToMatch: Minor
  • Bemeneti paraméterek:
    • matchTo: Minor
    • stringComparison: ordinalIgnoreCase
    • outputClaimIfMatched: B2C_V1_90001
  • Kimeneti jogcímek:
    • isMinorResponseCode: true
    • isMinor: B2C_V1_90001

StringContains

Meghatározza, hogy egy adott részszűrés a bemeneti jogcímen belül történik-e. Az eredmény egy új logikai jogcím, amelynek értéke vagy falseértéke true . true ha az értékparaméter ezen a sztringen belül történik, ellenkező esetben false.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr A keresendő jogcím típusa.
InputParameter contains húr A keresendő érték.
InputParameter ignoreCase húr Megadja, hogy az összehasonlítás figyelmen kívül hagyja-e az összehasonlítandó sztring esetét.
OutputClaim outputClaim húr A jogcímátalakítás meghívása után létrejött jogcím. Logikai jelző, ha az alászúrás a bemeneti jogcímen belül történik.

Példa a StringContainsra

Ezzel a jogcímátalakítással ellenőrizheti, hogy egy sztring jogcímtípus tartalmaz-e részstringet. Az alábbi példában ellenőrzi, hogy a sztring roles jogcímtípusa tartalmazza-e a rendszergazda értékét.

<ClaimsTransformation Id="CheckIsAdmin" TransformationMethod="StringContains">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="roles" TransformationClaimType="inputClaim"/>
  </InputClaims>
  <InputParameters>
    <InputParameter  Id="contains" DataType="string" Value="admin"/>
    <InputParameter  Id="ignoreCase" DataType="string" Value="true"/>
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="isAdmin" TransformationClaimType="outputClaim"/>
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: "Rendszergazda, jóváhagyó, szerkesztő"
  • Bemeneti paraméterek:
    • a következőt tartalmazza: "rendszergazda".
    • ignoreCase: true
  • Kimeneti jogcímek:
    • outputClaim: true

StringSubstring

Kinyeri egy sztring jogcímtípus részeit a megadott pozícióban lévő karaktertől kezdve, és visszaadja a megadott számú karaktert. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr A sztringet tartalmazó jogcímtípus.
InputParameter startIndex egész Az alsztring nulla alapú kezdő karakterpozíciója ebben a példányban.
InputParameter length (hossz) egész Az alsztringben lévő karakterek száma.
OutputClaim outputClaim húr Olyan sztring, amely egyenértékű az ebben a példányban a startIndexnél kezdődő hossz részszűrésével, vagy üres, ha a startIndex egyenlő a példány hosszával, és a hossz nulla.

Példa a StringSubstringre

Kérje le például a telefonszám ország/régió előtagját.

<ClaimsTransformation Id="GetPhonePrefix" TransformationMethod="StringSubstring">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="inputClaim" />
  </InputClaims>
<InputParameters>
  <InputParameter Id="startIndex" DataType="int" Value="0" />
  <InputParameter Id="length" DataType="int" Value="2" />
</InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="phonePrefix" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: "+1644114520"
  • Bemeneti paraméterek:
    • startIndex: 0
    • hossz: 2
  • Kimeneti jogcímek:
    • outputClaim: "+1"

StringReplace

Megkeres egy jogcímtípus-sztringet egy megadott értékre, és egy új jogcímtípus-sztringet ad vissza, amelyben az aktuális sztring egy adott sztringjének összes előfordulását egy másik megadott sztringre cseréli.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr A sztringet tartalmazó jogcímtípus.
InputParameter oldValue húr A keresendő sztring.
InputParameter newValue húr A sztring, amely az összes előfordulást lecseréli oldValue
OutputClaim outputClaim Logikai Az aktuális sztringgel egyenértékű sztring, azzal a különbséggel, hogy az oldValue összes példányát a newValue értékre cseréli a rendszer. Ha az oldValue nem található az aktuális példányban, a metódus változatlanul adja vissza az aktuális példányt.

Példa a StringReplace-re

Például normalizáljon egy telefonszámot a - karakterek eltávolításával

<ClaimsTransformation Id="NormalizePhoneNumber" TransformationMethod="StringReplace">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="inputClaim" />
  </InputClaims>
<InputParameters>
  <InputParameter Id="oldValue" DataType="string" Value="-" />
  <InputParameter Id="newValue" DataType="string" Value="" />
</InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="phoneNumber" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: "+164-411-452-054"
  • Bemeneti paraméterek:
    • oldValue: "-"
    • newValue: ""
  • Kimeneti jogcímek:
    • outputClaim: "+164411452054"

StringJoin

Összefűzi a megadott sztringgyűjtemény-jogcímtípus elemeit az egyes elemek vagy tagok között megadott elválasztó használatával.

Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim stringCollection Az összefűzendő sztringeket tartalmazó gyűjtemény.
InputParameter Határoló húr Az elválasztóként használandó sztring, például vessző ,.
OutputClaim outputClaim húr A sztringgyűjtemény tagjaiból inputClaim álló sztring, amelyet a delimiter bemeneti paraméter tagolt.

Példa a StringJoinra

Az alábbi példa a felhasználói szerepkörök sztringgyűjteményét veszi fel, és vesszőelválasztó sztringgé alakítja át. Ezzel a módszerrel sztringgyűjteményeket tárolhat egy Azure AD B2C-felhasználói fiókban. Később, amikor felolvassa a fiókot a címtárból, a StringSplit vesszőelválasztó sztringet visszaalakíthatja sztringgyűjteménysé.

<ClaimsTransformation Id="ConvertRolesStringCollectionToCommaDelimiterString" TransformationMethod="StringJoin">
  <InputClaims>
   <InputClaim ClaimTypeReferenceId="roles" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
    <InputParameter DataType="string" Id="delimiter" Value="," />
  </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="rolesCommaDelimiterConverted" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: [ "Admin", "Author", "Reader" ]
  • Bemeneti paraméterek:
    • elválasztó: ","
  • Kimeneti jogcímek:
    • outputClaim: "Admin,Author,Reader"

StringSplit

Egy sztringtömböt ad vissza, amely az adott sztring elemei által tagolt részsztringeket tartalmazza ebben a példányban. Tekintse meg a jogcímátalakítás élő bemutatóját .

Elem TransformationClaimType Adattípus Jegyzetek
InputClaim inputClaim húr Sztring jogcímtípus, amely a felosztandó alsztringeket tartalmazza.
InputParameter Határoló húr Az elválasztóként használandó sztring, például vessző ,.
OutputClaim outputClaim stringCollection Olyan sztringgyűjtemény, amelynek elemei a bemeneti paraméter által elválasztott sztringeket tartalmazzák ebben a delimiter sztringben.

Feljegyzés

A stringCollection meglévő elemei OutputClaim el lesznek távolítva.

Példa a StringSplitre

Az alábbi példa egy vesszővel tagolt felhasználói szerepkör-sztringet használ, és sztringgyűjteménysé alakítja.

<ClaimsTransformation Id="ConvertRolesToStringCollection" TransformationMethod="StringSplit">
  <InputClaims>
    <InputClaim ClaimTypeReferenceId="rolesCommaDelimiter" TransformationClaimType="inputClaim" />
  </InputClaims>
  <InputParameters>
  <InputParameter DataType="string" Id="delimiter" Value="," />
    </InputParameters>
  <OutputClaims>
    <OutputClaim ClaimTypeReferenceId="roles" TransformationClaimType="outputClaim" />
  </OutputClaims>
</ClaimsTransformation>
  • Bemeneti jogcímek:
    • inputClaim: Admin,Author,Reader
  • Bemeneti paraméterek:
    • elválasztó: ","
  • Kimeneti jogcímek:
    • outputClaim: [ "Admin", "Author", "Reader" ]

Sztring jogcímátalakítások kifejezései

Az Azure AD B2C egyéni szabályzatainak jogcímátalakítási kifejezései környezeti információkat nyújtanak a bérlőazonosítóról és a műszaki profil azonosítójáról.

Expression Leírás Példa
{TechnicalProfileId} A műszaki profilazonosító neve. Facebook-OAUTH
{RelyingPartyTenantId} A függő entitás házirendjének bérlőazonosítója. your-tenant.onmicrosoft.com
{TrustFrameworkTenantId} A megbízhatósági keretrendszer bérlőazonosítója. your-tenant.onmicrosoft.com

Következő lépések