ClaimsSchema
Megjegyzés
Az Azure Active Directory B2C-ben az egyéni szabályzatok elsősorban összetett forgatókönyvek kezelésére szolgálnak. A legtöbb esetben javasoljuk, hogy beépített felhasználói folyamatokat használjon. Ha még nem tette meg, tekintse meg az egyéni szabályzatok kezdőcsomagját az Egyéni szabályzatok használatának első lépései az Active Directory B2C-ben című témakörben.
A jogcímséma elem határozza meg azokat a jogcímtípusokat, amelyekre hivatkozni lehet a szabályzat részeként. A jogcímsémánál deklarálhatja a jogcímeket. A jogcím lehet vezetéknév, vezetéknév, megjelenítendő név, telefonszám stb. A ClaimsSchema elem a ClaimType elemek listáját tartalmazza. A ClaimType elem tartalmazza az Id attribútumot, amely a jogcím neve.
<BuildingBlocks>
<ClaimsSchema>
<ClaimType Id="Id">
<DisplayName>Surname</DisplayName>
<DataType>string</DataType>
<DefaultPartnerClaimTypes>
<Protocol Name="OAuth2" PartnerClaimType="family_name" />
<Protocol Name="OpenIdConnect" PartnerClaimType="family_name" />
<Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname" />
</DefaultPartnerClaimTypes>
<UserHelpText>Your surname (also known as family name or last name).</UserHelpText>
<UserInputType>TextBox</UserInputType>
Jogcímtípus
A ClaimType elem a következő attribútumot tartalmazza:
Attribútum | Kötelező | Leírás |
---|---|---|
Id | Yes | A jogcímtípushoz használt azonosító. Más elemek is használhatják ezt az azonosítót a szabályzatban. |
A ClaimType elem a következő elemeket tartalmazza:
Elem | Események | Leírás |
---|---|---|
DisplayName | 1:1 | A különböző képernyőkön a felhasználók számára megjelenített cím. Az érték honosítható. |
DataType | 1:1 | A jogcím típusa. |
DefaultPartnerClaimTypes | 0:1 | A partner alapértelmezett jogcímtípusai, amelyek egy adott protokollhoz használhatók. Az érték felülírható az InputClaim vagy OutputClaim elemekben megadott PartnerClaimType fájlban. Ezzel az elemet használva adja meg a protokoll alapértelmezett nevét. |
Maszk | 0:1 | A jogcím megjelenítésekor alkalmazható maszkoló karakterek opcionális sztringje. A 324-232-4343 telefonszám például XXX-XXX-4343 néven maszkolható. |
UserHelpText | 0:1 | A jogcímtípus leírása, amely hasznos lehet a felhasználók számára a cél megértéséhez. Az érték honosítható. |
UserInputType | 0:1 | A bemeneti vezérlő típusa, amelyet a felhasználónak elérhetővé kell tenni a jogcímtípus jogcímadatainak manuális megadásakor. Tekintse meg a lap későbbi részében definiált felhasználói beviteli típusokat. |
AdminHelpText | 0:1 | A jogcímtípus leírása, amely hasznos lehet a rendszergazdák számára a cél megértéséhez. |
Korlátozás | 0:1 | A jogcím értékkorlátozásai, például reguláris kifejezés (Regex) vagy elfogadható értékek listája. Az érték honosítható. |
PredicateValidationReference | 0:1 | Egy PredicateValidationsInput elemre mutató hivatkozás. A PredicateValidationReference elemek lehetővé teszik egy érvényesítési folyamat végrehajtását, hogy csak a megfelelően formázott adatok legyenek megadva. További információ: Predikátumok. |
DataType
A DataType elem a következő értékeket támogatja:
Típus | Leírás |
---|---|
boolean | Logikai (true vagy false ) értéket jelöl. |
dátum | Egy azonnali időpontot jelöl, amely általában egy nap dátumaként van kifejezve. A dátum értéke az ISO 8601 konvenciót követi. |
Datetime | Egy azonnali időpontot jelöl, amely általában a nap dátumaként és időpontjaként van kifejezve. A dátum értéke az ISO 8601-es konvenciót követi futásidőben, és UNIX-korúra konvertálódik, amikor jogcímként ki van állítva a jogkivonatba. |
duration | Időintervallumot jelöl évek, hónapok, napok, órák, percek és másodpercek szerint. A formátuma a PnYnMnDTnHnMnS , ahol P pozitív vagy N negatív értéket jelez. nY az évek száma, amelyet egy literál Y követ. nMo a hónapok száma, amelyet egy literál Mo követ. nD a napok száma, amelyet egy literál D követ. Példák: P21Y 21 évet jelöl. P1Y2Mo egy évet és két hónapot jelöl. P1Y2Mo5D egy évet, két hónapot és öt napot jelöl. P1Y2M5DT8H5M20S egy évet, két hónapot, öt napot, nyolc órát, öt percet és húsz másodpercet jelöl. |
phoneNumber | Telefonszámot jelöl. |
int | -2 147 483 648 és 2 147 483 647 közötti számot jelöl |
hosszú | -9 223 372 036 854 775 808 és 9 223 372 036 854 775 807 közötti számot jelöl |
sztring | A szöveget UTF-16 kódegységek sorozataként jelöli. |
stringCollection | A gyűjteményét string jelöli. |
userIdentity | Felhasználói identitást jelöl. |
userIdentityCollection | A gyűjteményét userIdentity jelöli. |
DefaultPartnerClaimTypes
A DefaultPartnerClaimTypes a következő elemet tartalmazhatja:
Elem | Események | Leírás |
---|---|---|
Protokoll | 1:n | Az alapértelmezett partnerjogcímtípus-névvel rendelkező protokollok listája. |
A Protocol elem a következő attribútumokat tartalmazza:
Attribútum | Kötelező | Leírás |
---|---|---|
Name (Név) | Yes | Az Azure AD B2C által támogatott érvényes protokoll neve. Lehetséges értékek: OAuth1, OAuth2, SAML2, OpenIdConnect. |
PartnerClaimType | Yes | A használni kívánt jogcímtípus neve. |
A következő példában, amikor az Identity Experience Framework egy SAML2 identitásszolgáltatóval vagy függő entitásalkalmazással kommunikál, a vezetéknév jogcím a következőre lesz leképezve http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
: , OpenIdConnect és OAuth2, a jogcím a következőre family_name
lesz leképezve: .
<ClaimType Id="surname">
<DisplayName>Surname</DisplayName>
<DataType>string</DataType>
<DefaultPartnerClaimTypes>
<Protocol Name="OAuth2" PartnerClaimType="family_name" />
<Protocol Name="OpenIdConnect" PartnerClaimType="family_name" />
<Protocol Name="SAML2" PartnerClaimType="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname" />
</DefaultPartnerClaimTypes>
</ClaimType>
Ennek eredményeképpen a Azure AD B2C által kibocsátott JWT-jogkivonat a ClaimType név vezetékneve helyett a family_name
értéket bocsátja ki.
{
"sub": "6fbbd70d-262b-4b50-804c-257ae1706ef2",
"auth_time": 1535013501,
"given_name": "David",
"family_name": "Williams",
"name": "David Williams",
}
Maszk
A Mask elem a következő attribútumokat tartalmazza:
Attribútum | Kötelező | Leírás |
---|---|---|
Type |
Igen | A jogcímmaszk típusa. Lehetséges értékek: Simple vagy Regex . Az Simple érték azt jelzi, hogy egy egyszerű szövegmaszkot alkalmaz a rendszer egy sztringjogcím kezdő részére. Az Regex érték azt jelzi, hogy a rendszer egy reguláris kifejezést alkalmaz a sztringjogcím egészére. Ha az Regex érték meg van adva, egy nem kötelező attribútumot is meg kell határozni a használni kívánt reguláris kifejezéssel. |
Regex |
No | Ha Type a értéke Regex , adja meg a használni kívánt reguláris kifejezést. |
Az alábbi példa egy PhoneNumber jogcímet konfigurál a Simple
maszkkal. További példákért tekintse meg az Egyszerű maszk igénylése élő bemutatót.
<ClaimType Id="PhoneNumber">
<DisplayName>Phone Number</DisplayName>
<DataType>string</DataType>
<Mask Type="Simple">XXX-XXX-</Mask>
<UserHelpText>Your telephone number.</UserHelpText>
</ClaimType>
Az Identity Experience Framework megjeleníti a telefonszámot, miközben elrejti az első hat számjegyet:
Az alábbi példa egy AlternateEmail jogcímet konfigurál a Regex
maszkkal. További mintákért tekintse meg a Regex-maszk élő bemutatóját.
<ClaimType Id="AlternateEmail">
<DisplayName>Please verify the secondary email linked to your account</DisplayName>
<DataType>string</DataType>
<Mask Type="Regex" Regex="(?<=.).(?=.*@)">*</Mask>
<UserInputType>Readonly</UserInputType>
</ClaimType>
Az Identity Experience Framework csak az e-mail-cím és az e-mail-tartománynév első betűit jeleníti meg:
Korlátozás
A Restriction elem a következő attribútumot tartalmazhatja:
Attribútum | Kötelező | Leírás |
---|---|---|
MergeBehavior | No | Az enumerálási értékeknek a szülőszabályzatban lévő ClaimType értékkel való egyesítése ugyanazzal az azonosítóval. Ezt az attribútumot akkor használja, ha felülír egy, az alapszabályzatban megadott jogcímet. Lehetséges értékek: Append , Prepend vagy ReplaceAll . Az Append érték olyan adatgyűjtemény, amelyet hozzá kell fűzni a szülőszabályzatban megadott gyűjtemény végéhez. Az Prepend érték olyan adatgyűjtemény, amelyet a szülőszabályzatban megadott gyűjtemény előtt kell hozzáadni. Az ReplaceAll érték a szülőszabályzatban megadott adatok gyűjteménye, amelyet figyelmen kívül kell hagyni. |
A Korlátozás elem a következő elemeket tartalmazza:
Elem | Események | Leírás |
---|---|---|
Enumerálás | 1:n | A felhasználói felületen elérhető lehetőségek, hogy a felhasználó kiválaszthassa a jogcímet, például egy értéket egy legördülő menüben. |
Mintázat | 1:1 | A használandó reguláris kifejezés. |
Enumerálás
Az Enumerálás elem határozza meg, hogy a felhasználó kiválaszthat-e egy jogcímet a felhasználói felületen, például egy , DropdownSingleSelect
vagy RadioSingleSelect
egy értéketCheckboxMultiSelect
. Az elérhető beállításokat a LocalizedCollections elem használatával is definiálhatja és honosíthatja. Ha egy jogcím-enumerálási gyűjteményből szeretne elemet keresni, használja a GetMappedValueFromLocalizedCollection jogcímátalakítást.
Az Enumerálás elem a következő attribútumokat tartalmazza:
Attribútum | Kötelező | Leírás |
---|---|---|
Szöveg | Yes | A felhasználó számára a beállítás felhasználói felületén megjelenő megjelenítési sztring. |
Érték | Yes | A beállítás kiválasztásához társított jogcímérték. |
Válassza aByDefault lehetőséget | No | Azt jelzi, hogy ez a beállítás alapértelmezés szerint be legyen-e jelölve a felhasználói felületen. Lehetséges értékek: Igaz vagy Hamis. |
Az alábbi példa egy városi legördülő lista jogcímét konfigurálja, amelynek alapértelmezett értéke .New York
További példákért tekintse meg a Jogcímkorlátozások számbavétele élő bemutatót.
<ClaimType Id="city">
<DisplayName>city where you work</DisplayName>
<DataType>string</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="Bellevue" Value="bellevue" SelectByDefault="false" />
<Enumeration Text="Redmond" Value="redmond" SelectByDefault="false" />
<Enumeration Text="New York" Value="new-york" SelectByDefault="true" />
</Restriction>
</ClaimType>
Legördülő lista a new yorki alapértelmezett értékkel:
Mintázat
A Minta elem a következő attribútumokat tartalmazhatja:
Attribútum | Kötelező | Leírás |
---|---|---|
RegularExpression | Yes | Az ilyen típusú jogcímek reguláris kifejezésének egyeznie kell az érvényesség érdekében. |
Súgószöveg | No | Hibaüzenet a felhasználók számára, ha a reguláris kifejezés ellenőrzése sikertelen. |
Az alábbi példa egy e-mail jogcímet konfigurál reguláris kifejezésbeviteli ellenőrzéssel és súgószöveggel:
<ClaimType Id="email">
<DisplayName>Email Address</DisplayName>
<DataType>string</DataType>
<DefaultPartnerClaimTypes>
<Protocol Name="OpenIdConnect" PartnerClaimType="email" />
</DefaultPartnerClaimTypes>
<UserHelpText>Email address that can be used to contact you.</UserHelpText>
<UserInputType>TextBox</UserInputType>
<Restriction>
<Pattern RegularExpression="^[a-zA-Z0-9.+!#$%&'+^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+^_`{}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$" HelpText="Please enter a valid email address." />
</Restriction>
</ClaimType>
Az Identity Experience Framework az e-mail-cím jogcímét az e-mail-formátum bemenetének ellenőrzésével jeleníti meg:
UserInputType
Azure AD B2C számos felhasználói beviteli típust támogat, például a szövegmezőt, a jelszót és a legördülő listát, amelyek a jogcímtípus jogcímadatainak manuális megadásakor használhatók. Meg kell adnia a UserInputType értéket , amikor önaláírt technikai profillal és megjelenítési vezérlőkkel gyűjt adatokat a felhasználótól.
Tekintse meg a felhasználói beviteli típus élő bemutatóját .
A UserInputType elem elérhető felhasználói beviteli típusai:
UserInputType | Támogatott Jogcímtípus | Leírás |
---|---|---|
CheckboxMultiSelect | string |
Többszörös kijelölés legördülő lista. A jogcímérték a kijelölt értékek vesszőelválasztó sztringjében jelenik meg. |
DateTimeDropdown | date , dateTime |
Legördülő menük egy nap, hónap és év kiválasztásához. |
DropdownSingleSelect | string |
Egyszeres kijelölés legördülő lista. A jogcím értéke a kijelölt érték. |
E-mail-cím | string |
Email beviteli mező. |
Bekezdés | boolean , date , dateTime , duration , int , long , string |
Olyan mező, amely csak bekezdéscímkében jeleníti meg a szöveget. |
Jelszó | string |
Jelszó szövegmező. |
RadioSingleSelect | string |
Választógombok gyűjteménye. A jogcím értéke a kijelölt érték. |
Olvasható | boolean , date , dateTime , duration , int , long , string |
Írásvédett szövegdoboz. |
TextBox | boolean , int , phoneNumber , string |
Egysoros szövegdoboz. |
TextBox
A TextBox felhasználói beviteli típusa egysoros szövegdoboz megadására szolgál.
<ClaimType Id="displayName">
<DisplayName>Display Name</DisplayName>
<DataType>string</DataType>
<UserHelpText>Your display name.</UserHelpText>
<UserInputType>TextBox</UserInputType>
</ClaimType>
E-mail-cím
Az E-mailBox felhasználói beviteli típusa egy alapszintű e-mail beviteli mező megadására szolgál.
<ClaimType Id="email">
<DisplayName>Email Address</DisplayName>
<DataType>string</DataType>
<UserHelpText>Email address that can be used to contact you.</UserHelpText>
<UserInputType>EmailBox</UserInputType>
<Restriction>
<Pattern RegularExpression="^[a-zA-Z0-9.+!#$%&'+^_`{}~-]+(?:\.[a-zA-Z0-9!#$%&'+^_`{}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$" HelpText="Please enter a valid email address." />
</Restriction>
</ClaimType>
Jelszó
A jelszófelhasználó beviteli típusa a felhasználó által megadott jelszó rögzítésére szolgál.
<ClaimType Id="password">
<DisplayName>Password</DisplayName>
<DataType>string</DataType>
<UserHelpText>Enter password</UserHelpText>
<UserInputType>Password</UserInputType>
</ClaimType>
DateTimeDropdown
A DateTimeDropdown felhasználói beviteli típusa legördülő listakészletet biztosít egy nap, hónap és év kiválasztásához. A Predikátumok és a PredicateValidations elemek használatával szabályozhatja a minimális és maximális dátumértékeket. További információt a Predikátumok és predikátumértékekdátumtartományának konfigurálása című szakaszában talál.
<ClaimType Id="dateOfBirth">
<DisplayName>Date Of Birth</DisplayName>
<DataType>date</DataType>
<UserHelpText>The date on which you were born.</UserHelpText>
<UserInputType>DateTimeDropdown</UserInputType>
</ClaimType>
RadioSingleSelect
A RadioSingleSelect felhasználói beviteli típus olyan választógombok gyűjteményének biztosítására szolgál, amelyek lehetővé teszik, hogy a felhasználó egy lehetőséget válasszon.
<ClaimType Id="color">
<DisplayName>Preferred color</DisplayName>
<DataType>string</DataType>
<UserInputType>RadioSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="Blue" Value="Blue" SelectByDefault="false" />
<Enumeration Text="Green " Value="Green" SelectByDefault="false" />
<Enumeration Text="Orange" Value="Orange" SelectByDefault="true" />
</Restriction>
</ClaimType>
DropdownSingleSelect
A DropdownSingleSelect felhasználói beviteli típus egy legördülő lista megadására szolgál, amely lehetővé teszi, hogy a felhasználó egy lehetőséget válasszon.
<ClaimType Id="city">
<DisplayName>City where you work</DisplayName>
<DataType>string</DataType>
<UserInputType>DropdownSingleSelect</UserInputType>
<Restriction>
<Enumeration Text="Bellevue" Value="bellevue" SelectByDefault="false" />
<Enumeration Text="Redmond" Value="redmond" SelectByDefault="false" />
<Enumeration Text="New York" Value="new-york" SelectByDefault="true" />
</Restriction>
</ClaimType>
CheckboxMultiSelect
A CheckboxMultiSelect felhasználói beviteli típus a jelölőnégyzetek gyűjteményének megadására szolgál, amelyek lehetővé teszik, hogy a felhasználó több beállítást válasszon.
<ClaimType Id="languages">
<DisplayName>Languages you speak</DisplayName>
<DataType>string</DataType>
<UserInputType>CheckboxMultiSelect</UserInputType>
<Restriction>
<Enumeration Text="English" Value="English" SelectByDefault="true" />
<Enumeration Text="France " Value="France" SelectByDefault="false" />
<Enumeration Text="Spanish" Value="Spanish" SelectByDefault="false" />
</Restriction>
</ClaimType>
Olvasható
A Readonly user input type (Olvasási felhasználói beviteli típus) egy írásvédett mezőt biztosít a jogcím és az érték megjelenítéséhez.
<ClaimType Id="membershipNumber">
<DisplayName>Membership number</DisplayName>
<DataType>string</DataType>
<UserHelpText>Your membership number (read only)</UserHelpText>
<UserInputType>Readonly</UserInputType>
</ClaimType>
Bekezdés
A Bekezdés felhasználói beviteli típus olyan mező megadására szolgál, amely csak a bekezdéscímkében jelenít meg szöveget. Például <p>text</p>. A bekezdés felhasználó által megadott OutputClaim
típusú önaláírt technikai profilnak meg kell adnia az Required
attribútumot false
(alapértelmezett).
<ClaimType Id="responseMsg">
<DisplayName>Error message: </DisplayName>
<DataType>string</DataType>
<AdminHelpText>A claim responsible for holding response messages to send to the relying party</AdminHelpText>
<UserHelpText>A claim responsible for holding response messages to send to the relying party</UserHelpText>
<UserInputType>Paragraph</UserInputType>
</ClaimType>