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.
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}
-
séma:
- Kimeneti jogcímek:
-
outputClaim:
otpauth://totp/Contoso%20demo:emily@fabrikam.com?secret=fay2lj7ynpntjgqa&issuer=Contoso+demo
-
outputClaim:
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 : Telefonszám vagy e-mail bejelentkezési kezdőcsomag szabályzat.
<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
-
outputClaim:
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 | 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:
- Definiáljon egy honosítási sztringet, és társítsa egy önérvényesítő-technikai profillal.
- Az
ElementType
elemnek aLocalizedString
következőre kell állítania:FormatLocalizedStringTransformationClaimType
. - Ez
StringId
egy ön által definiált egyedi azonosító, amelyet később használ a jogcímátalakításstringFormatId
során. - 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
stringFormatId
StringId
honosított sztringelemre. - 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="ResponseMessage_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="ResponseMessage_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 ResponseMessage_EmailExists.
<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>
- Bemeneti jogcímek:
- inputClaim: sarah@contoso.com
- Bemeneti paraméterek:
- stringFormat: ResponseMessage_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:
Adjon meg egy honosítási sztringet a tartalomdefinícióhoz, például
api.selfasserted
.Az
ElementType
elemnek aLocalizedString
következőre kell állítania:GetLocalizedStringsTransformationClaimType
.Ez
StringId
egy ön által definiált egyedi azonosító, amelyet később használhat a jogcímátalakítás során.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. AzTransformationClaimType
elembenStringId
LocalizedString
definiált honosított sztring neve.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.
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 aapi.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:
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 StringId
be.
<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
Leképz egy elemet a bemeneti jogcím Korlátozás gyűjteményéből. 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.errorOnFailedLookup
true
A LookupNotFound
felhasználó számára megjelenített hibaüzenetet egy önaláértelmezett műszaki profil metaadatai vezérli.
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 true
false
. 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: true vagy 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: true vagy 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: "Phone"
- Kimeneti jogcímek:
- outputClaim: "iPhone"
- 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="(?<mailAlias>.*)@(.*)$" />
<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:
(?<mailAlias>.*)@(.*)$
- outputClaimIfMatched: "isEmail"
- extractGroups: true
-
matchTo:
- 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" ]
-
inputClaim:
- Bemeneti paraméterek:
- elválasztó: ","
- Kimeneti jogcímek:
-
outputClaim:
"Admin,Author,Reader"
-
outputClaim:
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
-
inputClaim:
- Bemeneti paraméterek:
- elválasztó: ","
- Kimeneti jogcímek:
-
outputClaim:
[ "Admin", "Author", "Reader" ]
-
outputClaim:
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
- További jogcímátalakítási minták keresése az Azure AD B2C-közösség GitHub-adattárában