Önérvényesített műszaki profil definiálása egyéni Azure Active Directory B2C-szabályzatban
Feljegyzés
Az Azure Active Directory B2C-ben az egyéni szabályzatok elsősorban összetett helyzetek kezelésére szolgálnak. A legtöbb forgatókönyv esetében javasoljuk, hogy beépített felhasználói folyamatokat használjon. Ha még nem tette meg, ismerkedjen meg az egyéni szabályzatok kezdőcsomagjával az Egyéni szabályzatok használatának első lépései az Active Directory B2C-ben.
Az Azure Active Directory B2C (Azure AD B2C) minden olyan interakciója, amelyben a felhasználótól elvárják, hogy bemenetet adjon, önérvényesített technikai profilok. Például regisztrációs lap, bejelentkezési lap vagy jelszó-visszaállítási oldal.
Protokoll
A Protokoll elem névattribútumát a következőre kell állítani Proprietary
: . A kezelőattribútumnak tartalmaznia kell az Azure AD B2C által használt protokollkezelő-szerelvény teljes nevét az önérvényesítéshez: Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Az alábbi példa egy önaláírással rendelkező technikai profilt mutat be az e-mail-regisztrációhoz:
<TechnicalProfile Id="LocalAccountSignUpWithLogonEmail">
<DisplayName>Email signup</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
Bemeneti jogcímek
Egy önaláírt műszaki profilban az InputClaims és az InputClaimsTransformations elemekkel előre feltöltheti az önaláírt oldalon megjelenő jogcímek értékét (jogcímek megjelenítése). A profil szerkesztési szabályzatában például a felhasználói folyamat először beolvassa a felhasználói profilt az Azure AD B2C címtárszolgáltatásból, majd az önaláírt műszaki profil beállítja a bemeneti jogcímeket a felhasználói profilban tárolt felhasználói adatokkal. Ezeket a jogcímeket a rendszer a felhasználói profilból gyűjti össze, majd beterjeszti a meglévő adatokat szerkeszteni képes felhasználónak.
<TechnicalProfile Id="SelfAsserted-ProfileUpdate">
...
<InputClaims>
<InputClaim ClaimTypeReferenceId="alternativeSecurityId" />
<InputClaim ClaimTypeReferenceId="userPrincipalName" />
<InputClaim ClaimTypeReferenceId="givenName" />
<InputClaim ClaimTypeReferenceId="surname" />
</InputClaims>
Jogcímek megjelenítése
A DisplayClaims elem a képernyőn megjelenítendő jogcímek listáját tartalmazza a felhasználótól származó adatok gyűjtéséhez. A megjelenítési jogcímek értékeinek előzetes feltöltéséhez használja a korábban ismertetett bemeneti jogcímeket. Az elem tartalmazhat alapértelmezett értéket is.
A Jogcímek sorrendje a DisplayClaimsben azt határozza meg, hogy az Azure AD B2C milyen sorrendben jeleníti meg a jogcímeket a képernyőn. Ha arra szeretné kényszeríteni a felhasználót, hogy adjon meg egy értéket egy adott jogcímhez, állítsa a DisplayClaim elem Kötelező attribútumát a következőretrue
: .
A DisplayClaims gyűjtemény ClaimType elemének a UserInputType elemet az Azure AD B2C által támogatott felhasználói beviteli típusra kell beállítania. Például, TextBox
vagy DropdownSingleSelect
.
Hivatkozás hozzáadása Egy DisplayControlhoz
A megjelenítési jogcímek gyűjteményében hivatkozhat a létrehozott DisplayControlra . A megjelenítési vezérlő egy speciális funkciókkal rendelkező felhasználói felületi elem, amely az Azure AD B2C háttérszolgáltatással működik együtt. Lehetővé teszi, hogy a felhasználó műveleteket hajt végre azon a lapon, amely egy érvényesítési műszaki profilt hív meg a háttérrendszerben. Például egy e-mail-cím, telefonszám vagy ügyfél-hűségszám ellenőrzése.
Az alábbi példa TechnicalProfile
a megjelenítési jogcímek megjelenítési vezérlőkkel való használatát mutatja be.
- Az első megjelenítési jogcím hivatkozik a megjelenítési
emailVerificationControl
vezérlőre, amely összegyűjti és ellenőrzi az e-mail-címet. - A második megjelenítési jogcím hivatkozik a megjelenítési
captchaChallengeControl
vezérlőre, amely létrehozza és ellenőrzi a CAPTCHA-kódot. - A hatodik megjelenítési jogcím hivatkozik a megjelenítési
phoneVerificationControl
vezérlőre, amely összegyűjti és ellenőrzi a telefonszámot. - A többi megjelenítési jogcím a felhasználótól gyűjtendő ClaimTypes.
<TechnicalProfile Id="Id">
<DisplayClaims>
<DisplayClaim DisplayControlReferenceId="emailVerificationControl" />
<DisplayClaim DisplayControlReferenceId="captchaChallengeControl" />
<DisplayClaim ClaimTypeReferenceId="displayName" Required="true" />
<DisplayClaim ClaimTypeReferenceId="givenName" Required="true" />
<DisplayClaim ClaimTypeReferenceId="surName" Required="true" />
<DisplayClaim DisplayControlReferenceId="phoneVerificationControl" />
<DisplayClaim ClaimTypeReferenceId="newPassword" Required="true" />
<DisplayClaim ClaimTypeReferenceId="reenterPassword" Required="true" />
</DisplayClaims>
</TechnicalProfile>
Ahogy említettük, a megjelenítési vezérlőre mutató hivatkozással rendelkező megjelenítési jogcímek saját érvényesítést futtathatnak, például az e-mail-cím ellenőrzését. Emellett az önaláírt oldal támogatja egy érvényesítési műszaki profil használatát a teljes oldal ellenőrzéséhez, beleértve a felhasználói bemeneteket (jogcímtípusokat vagy megjelenítési vezérlőket), mielőtt továbblépne a következő vezénylési lépésre.
A megjelenítési jogcímek és a kimeneti jogcímek használatának gondos kombinálása
Ha egy vagy több DisplayClaim-elemet önérvényesített technikai profilban ad meg, minden olyan jogcímhez, amelyet a képernyőn szeretne megjeleníteni, és amelyet a felhasználótól szeretne gyűjteni, egy DisplayClaim-et kell használnia. Nem jelennek meg kimeneti jogcímek olyan önaláírással rendelkező műszaki profilok, amelyek legalább egy megjelenítési jogcímet tartalmaznak.
Vegye figyelembe az alábbi példát, amelyben egy age
jogcím kimeneti jogcímként van definiálva egy alapszabályzatban. Mielőtt bármilyen megjelenítési jogcímet hozzáad a saját jogú műszaki profilhoz, a age
jogcím megjelenik a képernyőn a felhasználótól származó adatgyűjtéshez:
<TechnicalProfile Id="id">
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="age" />
</OutputClaims>
</TechnicalProfile>
Ha egy levélházirend, amely ezt az alapot örökli, később megjelenítési officeNumber
jogcímként adja meg:
<TechnicalProfile Id="id">
<DisplayClaims>
<DisplayClaim ClaimTypeReferenceId="officeNumber" />
</DisplayClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="officeNumber" />
</OutputClaims>
</TechnicalProfile>
Az age
alapszabályzatban szereplő jogcím már nem jelenik meg a képernyőn a felhasználó számára – gyakorlatilag "rejtett". Ha meg szeretné jeleníteni a age
jogcímet, és be szeretné gyűjteni a felhasználótól a korértéket, hozzá kell adnia egy age
DisplayClaim értéket.
Kimeneti jogcímek
Az OutputClaims elem tartalmazza a következő vezénylési lépéshez visszaadandó jogcímek listáját. A DefaultValue attribútum csak akkor lép érvénybe, ha a jogcím még nem lett beállítva. Ha egy korábbi vezénylési lépésben lett beállítva, az alapértelmezett érték akkor sem lép érvénybe, ha a felhasználó üresen hagyja az értéket. Az alapértelmezett érték használatának kényszerítéséhez állítsa az AlwaysUseDefaultValue attribútumot a következőre true
: .
Biztonsági okokból a jelszóigénylési érték (UserInputType
a beállítás Password
értéke) csak az ön által érvényesített műszaki profil érvényesítési műszaki profiljai számára érhető el. A következő vezénylési lépésekben nem használhat jelszóigénylést.
Feljegyzés
Az Identity Experience Framework (IEF) korábbi verzióiban kimeneti jogcímek használatával gyűjtöttek adatokat a felhasználótól. Ha adatokat szeretne gyűjteni a felhasználótól, használjon inkább Egy DisplayClaims-gyűjteményt .
A OutputClaimsTransformations elem olyan OutputClaimsTransformation elemek gyűjteményét tartalmazhatja, amelyek a kimeneti jogcímek módosítására vagy újak létrehozására szolgálnak.
Mikor érdemes kimeneti jogcímeket használnia?
Egy önműködő műszaki profilban a kimeneti jogcímgyűjtemény a jogcímeket a következő vezénylési lépéshez adja vissza.
Kimeneti jogcímek használata a következő esetekben:
- A jogcímek kimeneti jogcímek átalakításával jönnek létre.
- Alapértelmezett érték beállítása egy kimeneti jogcímben anélkül, hogy adatokat gyűjtenek a felhasználótól, vagy visszaadják az adatokat az érvényesítési műszaki profilból. Az
LocalAccountSignUpWithLogonEmail
önaláírt műszaki profil a végrehajtott-SelfAsserted-Input jogcímet a következőretrue
állítja be: . - Az érvényesítési műszaki profil a kimeneti jogcímeket adja vissza – A műszaki profil meghívhat egy érvényesítési műszaki profilt, amely bizonyos jogcímeket ad vissza. Előfordulhat, hogy felbuborozza a jogcímeket, és vissza szeretné őket küldeni a felhasználói folyamat következő vezénylési lépéseihez. Ha például egy helyi fiókkal jelentkezik be, a névvel ellátott
SelfAsserted-LocalAccountSignin-Email
önérvényesítő technikai profil meghívja a nevesített érvényesítési műszaki profiltlogin-NonInteractive
. Ez a technikai profil ellenőrzi a felhasználói hitelesítő adatokat, és a felhasználói profilt is visszaadja. Ilyen például a "userPrincipalName", a "displayName", a "givenName" és a "surName". - A megjelenítési vezérlő visszaadja a kimeneti jogcímeket – Előfordulhat, hogy a műszaki profil egy megjelenítési vezérlőre hivatkozik. A megjelenítési vezérlő visszaad néhány jogcímet, például az ellenőrzött e-mail-címet. Előfordulhat, hogy felbuborozza a jogcímeket, és vissza szeretné őket küldeni a felhasználói folyamat következő vezénylési lépéseihez.
Az alábbi példa egy önaláírással rendelkező műszaki profil használatát mutatja be, amely megjelenítési jogcímeket és kimeneti jogcímeket egyaránt használ.
<TechnicalProfile Id="LocalAccountSignUpWithLogonEmail">
<DisplayName>Email signup</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.Providers.SelfAssertedAttributeProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
<Metadata>
<Item Key="IpAddressClaimReferenceId">IpAddress</Item>
<Item Key="ContentDefinitionReferenceId">api.localaccountsignup</Item>
<Item Key="language.button_continue">Create</Item>
</Metadata>
<InputClaims>
<InputClaim ClaimTypeReferenceId="email" />
</InputClaims>
<DisplayClaims>
<DisplayClaim DisplayControlReferenceId="emailVerificationControl" />
<DisplayClaim DisplayControlReferenceId="SecondaryEmailVerificationControl" />
<DisplayClaim ClaimTypeReferenceId="displayName" Required="true" />
<DisplayClaim ClaimTypeReferenceId="givenName" Required="true" />
<DisplayClaim ClaimTypeReferenceId="surName" Required="true" />
<DisplayClaim ClaimTypeReferenceId="newPassword" Required="true" />
<DisplayClaim ClaimTypeReferenceId="reenterPassword" Required="true" />
</DisplayClaims>
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="email" Required="true" />
<OutputClaim ClaimTypeReferenceId="objectId" />
<OutputClaim ClaimTypeReferenceId="executed-SelfAsserted-Input" DefaultValue="true" />
<OutputClaim ClaimTypeReferenceId="authenticationSource" />
<OutputClaim ClaimTypeReferenceId="newUser" />
</OutputClaims>
<ValidationTechnicalProfiles>
<ValidationTechnicalProfile ReferenceId="AAD-UserWriteUsingLogonEmail" />
</ValidationTechnicalProfiles>
<UseTechnicalProfileForSessionManagement ReferenceId="SM-AAD" />
</TechnicalProfile>
Feljegyzés
Ha a jelszóigénylési értéket az önazonos műszaki profilban gyűjti össze, az érték csak ugyanabban a műszaki profilban vagy érvényesítési műszaki profilban érhető el, amelyekre ugyanez az önérvényesítési műszaki profil hivatkozik. Ha az önaláíró műszaki profil végrehajtása befejeződik, és egy másik műszaki profilba kerül, a jelszó értéke elveszik. Következésképpen a jelszóigénylés csak abban a vezénylési lépésben tárolható, amelyben a rendszer összegyűjti.
Kimeneti jogcímek regisztrálása vagy bejelentkezési oldal
Egy kombinált regisztrációs és bejelentkezési oldalon jegyezze fel a következőket, ha olyan tartalomdefiníciós DataUri-elemet használ, amely egy vagy unifiedssd
több oldaltípust unifiedssp
határoz meg:
- Csak a felhasználónév és a jelszó jogcímei jelennek meg.
- Az első két kimeneti jogcímnek a felhasználónévnek és a jelszónak kell lennie (ebben a sorrendben).
- Egyéb jogcímek nem jelennek meg; ezekhez a jogcímekhez be kell állítania vagy meg kell hívnia a
defaultValue
jogcíműrlap érvényesítési műszaki profilját.
Jogcímek megőrzése
A PersistedClaims elem nincs használatban. Az önazonos műszaki profil nem megőrzi az adatokat az Azure AD B2C-ben. Ehelyett az adatok megőrzéséért felelős érvényesítési műszaki profilra kell hívást kezdeményezni. A regisztrációs szabályzat például az LocalAccountSignUpWithLogonEmail
önérvényesített technikai profillal gyűjti össze az új felhasználói profilt. A LocalAccountSignUpWithLogonEmail
technikai profil meghívja az érvényesítési műszaki profilt a fiók Azure AD B2C-ben való létrehozásához.
Érvényesítési műszaki profilok
Az érvényesítési műszaki profil a hivatkozó műszaki profil egyes vagy teljes kimeneti jogcímeinek érvényesítésére szolgál. Az érvényesítési műszaki profil bemeneti jogcímeinek meg kell jelenniük az önaláírt műszaki profil kimeneti jogcímeiben. Az érvényesítési műszaki profil ellenőrzi a felhasználói bemenetet, és hibát adhat vissza a felhasználónak.
Az érvényesítési műszaki profil lehet a szabályzat bármely technikai profilja, például a Microsoft Entra ID vagy a REST API technikai profilja. Az előző példában a LocalAccountSignUpWithLogonEmail
technikai profil ellenőrzi, hogy a signinName nem létezik-e a címtárban. Ha nem, az érvényesítési műszaki profil létrehoz egy helyi fiókot, és visszaadja az objectId, authenticationSource, newUser azonosítót. A SelfAsserted-LocalAccountSignin-Email
technikai profil meghívja az login-NonInteractive
érvényesítési műszaki profilt a felhasználói hitelesítő adatok ellenőrzéséhez.
Meghívhat egy REST API-technikai profilt az üzleti logikával, felülírhatja a bemeneti jogcímeket, vagy bővítheti a felhasználói adatokat a vállalati üzletági alkalmazással való további integrációval. További információ: Érvényesítési műszaki profil
Feljegyzés
Az érvényesítési műszaki profil csak akkor aktiválódik, ha a felhasználó bemenete van. Nem hozhat létre üres, önérvényesített műszaki profilt az érvényesítési műszaki profil meghívásához, csak azért, hogy kihasználhassa a ValidationTechnicalProfile elem ContinueOnError attribútumának előnyeit. Érvényesítési műszaki profilt csak olyan önaláírt műszaki profilból hívhat meg, amely bemenetet kér a felhasználótól, vagy egy felhasználói folyamat vezénylési lépéséből.
Metaadatok
Attribútum | Kötelező | Leírás |
---|---|---|
setting.operatingMode 1 | Nem | A bejelentkezési lap esetében ez a tulajdonság szabályozza a felhasználónév mező viselkedését, például a bemeneti érvényesítést és a hibaüzeneteket. Várt értékek: Username vagy Email . Tekintse meg a metaadatok élő bemutatóját . |
AllowGenerationOfClaimsWithNullValues | Nem | Null értékű jogcím létrehozásának engedélyezése. Egy esetben például a felhasználó nem jelöl be jelölőnégyzetet. |
ContentDefinitionReferenceId | Igen | A technikai profilhoz társított tartalomdefiníció azonosítója. |
EnforceEmailVerification | Nem | Regisztrációhoz vagy profilszerkesztéshez kényszeríti az e-mail-ellenőrzést. Lehetséges értékek: true (alapértelmezett) vagy false . |
setting.retryLimit | Nem | Azt szabályozza, hogy a felhasználó hányszor próbálja meg megadni az érvényesítési műszaki profilon ellenőrzött adatokat. Egy felhasználó például olyan fiókkal próbál regisztrálni, amely már létezik, és addig próbálkozik, amíg el nem éri a korlátot. Tekintse meg a metaadatok élő bemutatóját . |
SignUpTarget 1 | Nem | A regisztrációs célcsere azonosítója. Amikor a felhasználó a regisztrációs gombra kattint, az Azure AD B2C végrehajtja a megadott exchange-azonosítót. |
setting.showCancelButton | Nem | Megjeleníti a mégse gombot. Lehetséges értékek: true (alapértelmezett) vagy false . Tekintse meg a metaadatok élő bemutatóját . |
setting.showContinueButton | Nem | Megjeleníti a folytatás gombot. Lehetséges értékek: true (alapértelmezett) vagy false . Tekintse meg a metaadatok élő bemutatóját . |
setting.showSignupLink 2 | Nem | Megjeleníti a regisztráció gombot. Lehetséges értékek: true (alapértelmezett) vagy false . Tekintse meg a metaadatok élő bemutatóját . |
setting.forgotPasswordLinkLocation 2 | Nem | Megjeleníti az elfelejtett jelszó hivatkozását. Lehetséges értékek: AfterLabel (alapértelmezett) megjeleníti a hivatkozást közvetlenül a címke után vagy a jelszóbeviteli mező után, ha nincs címke, AfterInput megjeleníti a hivatkozást a jelszóbeviteli mező után, AfterButtons megjeleníti a hivatkozást az űrlap alján a gombok után, vagy None eltávolítja az elfelejtett jelszóhivatkozást. Tekintse meg a metaadatok élő bemutatóját . |
setting.enableRememberMe 2 | Nem | Megjeleníti a Be van jelentkezve jelölőnégyzetet. Lehetséges értékek: true vagy false (alapértelmezett). A metaadatok élő bemutatója . |
setting.inputVerificationDelayTimeInMilliseconds 3 | Nem | Javítja a felhasználói élményt, ha arra vár, hogy a felhasználó abbahagyja a gépelést, majd ellenőrizze az értéket. Alapértelmezett érték: 2000 ezredmásodperc. Tekintse meg a metaadatok élő bemutatóját . |
IncludeClaimResolvingInClaimsHandling | Nem | A bemeneti és kimeneti jogcímek esetében meghatározza, hogy a jogcímfeloldás szerepel-e a műszaki profilban. Lehetséges értékek: true vagy false (alapértelmezett). Ha egy jogcímfeloldót szeretne használni a műszaki profilban, állítsa be a következőre true : . |
setting.forgotPasswordLinkOverride 4 | Nem | Végrehajtandó jelszó-visszaállítási jogcímcsere. További információ: Önkiszolgáló jelszó-visszaállítás. |
setting.enableCaptchaChallenge | Nem | Megadja, hogy megjelenjen-e a CAPTCHA kihíváskódja. Lehetséges értékek: true vagy false (alapértelmezett). Ahhoz, hogy ez a beállítás működjön, a CAPTCHA megjelenítési vezérlőjét az önazonos műszaki profil megjelenítési jogcímeiben kell hivatkozni. A CAPTCHA szolgáltatás nyilvános előzetes verzióban érhető el. |
setting.showHeading | Nem | Megadja, hogy a Felhasználói adatok címsorelemnek láthatónak kell-e lennie. Lehetséges értékek: true (alapértelmezett) vagy false . |
Megjegyzések:
- A tartalomdefiníció DataUri-típusához
unifiedssp
vagyunifiedssd
. - A tartalomdefiníció DataUri-típusához
unifiedssp
vagyunifiedssd
. A lapelrendezés 1.1.0-s vagy újabb verziója . - Az oldalelrendezés 1.2.0-s vagy újabb verziójához érhető el.
- Elérhető a dataUri típusú tartalomdefinícióhoz.
unifiedssp
A lapelrendezés 2.1.2-es és újabb verziója .
Titkosítási kulcsok
A CryptographicKeys elem nincs használatban.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: