Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Fontos
2025. május 1-jére az Azure AD B2C már nem lesz elérhető az új ügyfelek számára. További információ a GYIK-ben.
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.
A felhasználói interakciósorozatok explicit elérési utakat határoznak meg, amelyen keresztül egy szabályzat lehetővé teszi a jogcímfelhasználó alkalmazásnak a kívánt jogcímek beszerzését a felhasználó számára. A felhasználó ezeken az elérési utakon keresztül kérheti le a jogcímeket, amelyeket bemutathat a függő entitásnak. Más szóval a felhasználói folyamatok határozzák meg a végfelhasználók üzleti logikáját, mivel az Azure AD B2C Identity Experience Framework feldolgozza a kérést.
Ezek a felhasználói folyamatok olyan sablonoknak tekinthetők, amelyek a közösség különböző függő entitásainak alapvető igényeit kielégítik. A felhasználói folyamatok megkönnyítik a szabályzat függő entitás részének meghatározását. A szabályzatok több felhasználói folyamatot is meghatározhatnak. Minden felhasználói folyamat vezénylési lépések sorozata.
A szabályzat által támogatott felhasználói folyamatok meghatározásához a rendszer hozzáad egy UserJourneys elemet a szabályzatfájl legfelső szintű TrustFrameworkPolicy eleméhez.
<TrustFrameworkPolicy ...>
...
<UserJourneys>
...
</UserJourneys>
</TrustFrameworkPolicy>
A UserJourneys elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| Felhasználói út | 1:n | A teljes felhasználói folyamathoz szükséges összes szerkezetet meghatározó felhasználói folyamat. |
A UserJourney elem a következő attribútumot tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
| Azonosító | Igen | Egy felhasználói folyamat azonosítója, amely a szabályzat más elemeiből való hivatkozásra használható. A függő entitás házirendjének DefaultUserJourney eleme erre az attribútumra mutat. |
| DefaultCpimIssuerTechnicalProfileReferenceId | Nem | Az alapértelmezett tokenkibocsátó technikai profil referencia-azonosítója. Például JWT-kiállító, SAML-tokenkibocsátó vagy OAuth2 egyéni hiba. Ha a felhasználói út vagy az alút már rendelkezik egy másik SendClaims vezénylési lépésvel, állítsa be az DefaultCpimIssuerTechnicalProfileReferenceId attribútumot a felhasználói folyamat jogkivonat-kiállítójának technikai profiljára. |
A UserJourney elem a következő elemeket tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| EngedélyezésTechnikaiProfilok | 0:1 | Engedélyezési műszaki profilok listája. |
| Vezénylési lépések | 1:n | Vezénylési sorozat, amelyet egy sikeres tranzakcióhoz kell követni. Minden felhasználói folyamat a sorrendben végrehajtott vezénylési lépések rendezett listájából áll. Ha bármelyik lépés meghiúsul, a tranzakció meghiúsul. |
EngedélyezésTechnikaiProfilok
Tegyük fel, hogy egy felhasználó végrehajtott egy UserJourney-t, és kapott egy hozzáférést vagy egy azonosító jogkivonatot. További erőforrások, például a UserInfo végpont kezeléséhez azonosítani kell a felhasználót. A folyamat megkezdéséhez a felhasználónak be kell mutatnia a korábban kiadott hozzáférési jogkivonatot annak bizonyítékaként, hogy eredetileg egy érvényes Azure AD B2C-szabályzat hitelesítette őket. A felhasználó érvényes jogkivonatának mindig jelen kell lennie a folyamat során, hogy a felhasználó számára engedélyezve legyen a kérés. Az engedélyezési műszaki profilok ellenőrzik a bejövő jogkivonatot, és jogcímeket nyernek ki a jogkivonatból.
Az AuthorizationTechnicalProfiles elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| EngedélyezésTechnikaiProfil | 0:1 | A felhasználó engedélyezéséhez használt műszaki profilhivatkozás. |
Az AuthorizationTechnicalProfile elem a következő attribútumot tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
| Referenciaazonosító | Igen | A végrehajtandó műszaki profil azonosítója. |
Az alábbi példa egy engedélyezési műszaki profilokkal rendelkező felhasználói folyamatelemet mutat be:
<UserJourney Id="UserInfoJourney" DefaultCpimIssuerTechnicalProfileReferenceId="UserInfoIssuer">
<Authorization>
<AuthorizationTechnicalProfiles>
<AuthorizationTechnicalProfile ReferenceId="UserInfoAuthorization" />
</AuthorizationTechnicalProfiles>
</Authorization>
<OrchestrationSteps>
<OrchestrationStep Order="1" Type="ClaimsExchange">
...
Vezénylési lépések
A felhasználói folyamat vezénylési sorozatként jelenik meg, amelyet egy sikeres tranzakcióhoz követni kell. Ha bármelyik lépés meghiúsul, a tranzakció meghiúsul. Ezek a vezénylési lépések a szabályzatfájlban engedélyezett építőelemekre és jogcímszolgáltatókra is hivatkoznak. A felhasználói élmény megjelenítéséért vagy megjelenítéséért felelős vezénylési lépések a megfelelő tartalomdefiníció-azonosítóra is hivatkoznak.
A vezénylési lépések feltételesen végrehajthatók a vezénylési lépés elemében meghatározott előfeltételek alapján. Ellenőrizheti például, hogy csak akkor hajt-e végre vezénylési lépést, ha egy adott jogcím létezik, vagy ha egy jogcím egyenlő vagy nem a megadott értékkel.
A vezénylési lépések rendezett listájának megadásához a szabályzat részeként hozzáad egy OrchestrationSteps elemet. Ez az elem szükséges.
<UserJourney Id="SignUpOrSignIn">
<OrchestrationSteps>
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
...
Az OrchestrationSteps elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| Vezénylési lépés | 1:n | Egy rendezett vezénylési lépés. |
Az OrchestrationStep elem a következő attribútumokat tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
Order |
Igen | A vezénylési lépések sorrendje. Az attribútum értéke a Order következő 1időpontban N kezdődik: . Ha tehát 10 lépésből áll, és törli a második lépést, a 3–10. lépést újra kell számba vennie, hogy kettőről kilencre változzon. |
Type |
Igen | A vezénylési lépés típusa. Lehetséges értékek:
|
| ContentDefinitionReferenceId | Nem | A vezénylési lépéshez társított tartalomdefiníció azonosítója. A tartalomdefiníció referenciaazonosítója általában az önaláírt műszaki profilban van definiálva. Vannak azonban olyan esetek, amikor az Azure AD B2C-nek technikai profil nélkül kell megjelenítenie valamit. Két példa van: ha a vezénylési lépés típusa az alábbiak egyike: ClaimsProviderSelection vagy CombinedSignInAndSignUpaz Azure AD B2C-nek technikai profil nélkül kell megjelenítenie az identitásszolgáltató kiválasztását. |
| CpimIssuerTechnicalProfileReferenceId | Nem | A vezénylési lépés típusa: SendClaims. Ez a tulajdonság határozza meg a függő entitás jogkivonatát kiadó jogcímszolgáltató technikaiprofil-azonosítóját. Ha hiányzik, nem jön létre függő entitás jogkivonata. |
Az OrchestrationStep elem a következő elemeket tartalmazhatja:
| Elem | Események | Leírás |
|---|---|---|
| Előfeltételek | 0:n | A vezénylési lépés végrehajtásához teljesítendő előfeltételek listája. |
| ClaimsProviderSelections | 0:n | A vezénylési lépés jogcímszolgáltatói kiválasztásának listája. |
| KövetelésekCserék | 0:n | A vezénylési lépés jogcímcseréinek listája. |
| Utazási lista | 0:1 | A vezénylési lépésre jelentkező alútjelöltek listája. |
Előfeltételek
A vezénylési lépések feltételesen végrehajthatók a vezénylési lépésben meghatározott előfeltételek alapján. Az Preconditions elem a kiértékelendő előfeltételek listáját tartalmazza. Ha az előfeltételek kiértékelése teljesül, a kapcsolódó vezénylési lépés a következő vezénylési lépésre ugrik.
Az Azure AD B2C listázási sorrendben értékeli ki az előfeltételeket. A sorrendalapú előfeltételek lehetővé teszik az előfeltételek alkalmazásának sorrendjét. Az első teljesült előfeltétel felülbírálja az összes további előfeltételt. A vezénylési lépés csak akkor lesz végrehajtva, ha az összes előfeltétel nem teljesül.
Az Előfeltételek elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| Előfeltétel | 1:n | A kiértékelés előfeltétele. |
Előfeltétel
Az Előkondicionálás elem a következő attribútumokat tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
Type |
Igen | Az ehhez az előfeltételhez végrehajtandó ellenőrzés vagy lekérdezés típusa. Az érték lehet ClaimsExist, amely azt határozza meg, hogy a műveleteket akkor kell végrehajtani, ha a megadott jogcímek a felhasználó aktuális jogcímkészletében léteznek, vagy a ClaimEquals, amely azt határozza meg, hogy a műveleteket akkor kell végrehajtani, ha a megadott jogcím létezik, és az értéke megegyezik a megadott értékkel. |
ExecuteActionsIf |
Igen | Dönti el, hogy az előfeltételek hogyan tekinthetők teljesültnek. Lehetséges értékek: truevagy false. Ha az érték értéke be van állítva true, akkor teljesül, ha a jogcím megfelel az előfeltételnek. Ha az érték értéke be van állítva false, akkor elégedettnek minősül, ha a jogcím nem felel meg az előfeltételnek. |
Az előkondicionálási elemek a következő elemeket tartalmazzák:
| Elem | Események | Leírás |
|---|---|---|
| Érték | 1:2 | A jogcímtípus azonosítója. A jogcím már definiálva van a házirendfájl jogcímséma szakaszában vagy a szülőházirend-fájlban. Ha az előfeltétel típusa ClaimEquals, egy második Value elem tartalmazza az ellenőrizendő értéket. |
| Művelet | 1:1 | Az előfeltétel-értékelés teljesülése esetén végrehajtandó művelet. Lehetséges érték: SkipThisOrchestrationStep. A kapcsolódó vezénylési lépés a következőre ugrik. |
Minden előfeltétel egyetlen jogcímet értékel ki. Kétféle előfeltétel létezik:
ClaimsExist – Azt határozza meg, hogy a műveleteket akkor kell végrehajtani, ha a megadott jogcímek a felhasználó aktuális jogcímcsomagjában találhatók.
ClaimEquals – Azt adja meg, hogy a műveleteket akkor kell végrehajtani, ha a megadott jogcím létezik, és értéke megegyezik a megadott értékkel. Az ellenőrzés megkülönbözteti a kis- és nagybetűket. Logikai jogcím típusának ellenőrzésekor használja
TrueaFalsevagy a .Ha a jogcím null értékű vagy nem inicializálódik, a rendszer figyelmen kívül hagyja az előfeltételt, függetlenül attól, hogy az
ExecuteActionsIfvagytruefalse. Ajánlott eljárásként ellenőrizze, hogy a jogcím létezik-e, és megegyezik-e egy értékkel.
Egy példaforgatókönyv a felhasználó MFA-ra való megtámadása, ha a felhasználó a következőre MfaPreferencevan Phone állítva: . A feltételes logika végrehajtásához ellenőrizze, hogy létezik-e a MfaPreference jogcím, és ellenőrizze azt is, hogy a jogcím értéke megegyezik-e.Phone Az alábbi XML bemutatja, hogyan implementálhatja ezt a logikát előfeltételekkel.
<Preconditions>
<!-- Skip this orchestration step if MfaPreference doesn't exist. -->
<Precondition Type="ClaimsExist" ExecuteActionsIf="false">
<Value>MfaPreference</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
<!-- Skip this orchestration step if MfaPreference doesn't equal to Phone. -->
<Precondition Type="ClaimEquals" ExecuteActionsIf="false">
<Value>MfaPreference</Value>
<Value>Phone</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
Példák előfeltételekre
Az alábbi előfeltételek ellenőrzik, hogy a felhasználó objectId azonosítója létezik-e. A felhasználói folyamat során a felhasználó kiválasztotta, hogy helyi fiókkal jelentkezzen be. Ha az objectId létezik, hagyja ki ezt a vezénylési lépést.
<OrchestrationStep Order="2" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>objectId</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="FacebookExchange" TechnicalProfileReferenceId="Facebook-OAUTH" />
<ClaimsExchange Id="SignUpWithLogonEmailExchange" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail" />
</ClaimsExchanges>
</OrchestrationStep>
Az alábbi előfeltételek ellenőrzik, hogy a felhasználó bejelentkezett-e közösségi fiókkal. Megkísérlik megkeresni a felhasználói fiókot a címtárban. Ha a felhasználó bejelentkezik vagy helyi fiókkal regisztrál, hagyja ki ezt a vezénylési lépést.
<OrchestrationStep Order="3" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimEquals" ExecuteActionsIf="true">
<Value>authenticationSource</Value>
<Value>localAccountAuthentication</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="AADUserReadUsingAlternativeSecurityId" TechnicalProfileReferenceId="AAD-UserReadUsingAlternativeSecurityId-NoError" />
</ClaimsExchanges>
</OrchestrationStep>
Az előfeltételek több előfeltételt is ellenőrizhetnek. Az alábbi példa ellenőrzi, hogy az "objectId" vagy az "e-mail" létezik-e. Ha az első feltétel igaz, az út a következő vezénylési lépésre ugrik.
<OrchestrationStep Order="4" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>objectId</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>email</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="SelfAsserted-SocialEmail" TechnicalProfileReferenceId="SelfAsserted-SocialEmail" />
</ClaimsExchanges>
</OrchestrationStep>
Jogcímszolgáltató kiválasztása
A jogcímszolgáltató kiválasztásával a felhasználók kiválaszthatják a műveletet a lehetőségek listájából. Az identitásszolgáltató kiválasztása két vezénylési lépésből áll:
-
Gombok – A gomb típusa
ClaimsProviderSelection, vagyCombinedSignInAndSignUpa felhasználó által választható lehetőségek listája. Az elemen belüliClaimsProviderSelectionsbeállítások sorrendje szabályozza a felhasználónak megjelenített gombok sorrendjét. -
Műveletek – Ezt követi a típus
ClaimsExchange. A ClaimsExchange a műveletek listáját tartalmazza. A művelet egy technikai profilra való hivatkozás, például OAuth2, OpenID Connect, jogcímátalakítás vagy önérvényesítés. Amikor egy felhasználó az egyik gombra kattint, a rendszer végrehajtja a megfelelő műveletet.
A ClaimsProviderSelections elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| ClaimsProviderSelection | 1:n | A választható jogcímszolgáltatók listáját tartalmazza. |
A ClaimsProviderSelections elem a következő attribútumokat tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
| DisplayOption | Nem | Egy olyan eset viselkedését szabályozza, amelyben egyetlen jogcímszolgáltatói kijelölés érhető el. Lehetséges értékek: DoNotShowSingleProvider (alapértelmezett) a rendszer azonnal átirányítja a felhasználót az összevont identitásszolgáltatóhoz. Vagy ShowSingleProvider az Azure AD B2C bemutatja a bejelentkezési oldalt az egyetlen identitásszolgáltató kiválasztásával. Az attribútum használatához a tartalomdefiníciós verziónak meg kell jelennie urn:com:microsoft:aad:b2c:elements:contract:providerselection:1.0.0 . |
A ClaimsProviderSelection elem a következő attribútumokat tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
| TargetClaimsExchangeId | Nem | A jogcímcsere azonosítója, amely a jogcímszolgáltató kiválasztásának következő vezénylési lépésében lesz végrehajtva. Ezt az attribútumot vagy a ValidationClaimsExchangeId attribútumot meg kell adni, de mindkettőt nem. |
| ValidationClaimsExchangeId | Nem | A jogcímcsere azonosítója, amelyet az aktuális vezénylési lépésben hajtunk végre a jogcímszolgáltató kiválasztásának ellenőrzéséhez. Ezt az attribútumot vagy a TargetClaimsExchangeId attribútumot meg kell adni, de mindkettőt nem. |
Példa jogcímszolgáltató kiválasztására
A következő vezénylési lépésben a felhasználó bejelentkezhet a Facebook, a LinkedIn, az X, a Google vagy egy helyi fiókkal. Ha a felhasználó kiválasztja az egyik közösségi identitásszolgáltatót, a második vezénylési lépés az attribútumban TargetClaimsExchangeId megadott kiválasztott jogcímcserével hajtja végre. A második vezénylési lépés átirányítja a felhasználót a közösségi identitásszolgáltatóhoz a bejelentkezési folyamat befejezéséhez. Ha a felhasználó úgy dönt, hogy a helyi fiókkal jelentkezik be, az Azure AD B2C ugyanazon a vezénylési lépésen (ugyanazon a regisztrációs oldalon vagy bejelentkezési oldalon) marad, és kihagyja a második vezénylési lépést.
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
<ClaimsProviderSelection TargetClaimsExchangeId="FacebookExchange" />
<ClaimsProviderSelection TargetClaimsExchangeId="LinkedInExchange" />
<ClaimsProviderSelection TargetClaimsExchangeId="TwitterExchange" />
<ClaimsProviderSelection TargetClaimsExchangeId="GoogleExchange" />
<ClaimsProviderSelection ValidationClaimsExchangeId="LocalAccountSigninEmailExchange" />
</ClaimsProviderSelections>
<ClaimsExchanges>
<ClaimsExchange Id="LocalAccountSigninEmailExchange"
TechnicalProfileReferenceId="SelfAsserted-LocalAccountSignin-Email" />
</ClaimsExchanges>
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
<Preconditions>
<Precondition Type="ClaimsExist" ExecuteActionsIf="true">
<Value>objectId</Value>
<Action>SkipThisOrchestrationStep</Action>
</Precondition>
</Preconditions>
<ClaimsExchanges>
<ClaimsExchange Id="FacebookExchange" TechnicalProfileReferenceId="Facebook-OAUTH" />
<ClaimsExchange Id="SignUpWithLogonEmailExchange" TechnicalProfileReferenceId="LocalAccountSignUpWithLogonEmail" />
<ClaimsExchange Id="GoogleExchange" TechnicalProfileReferenceId="Google-OAUTH" />
<ClaimsExchange Id="LinkedInExchange" TechnicalProfileReferenceId="LinkedIn-OAUTH" />
<ClaimsExchange Id="TwitterExchange" TechnicalProfileReferenceId="Twitter-OAUTH1" />
</ClaimsExchanges>
</OrchestrationStep>
KövetelésekCserék
A ClaimsExchanges elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| Követelések cseréje | 1:n | A használt műszaki profiltól függően vagy átirányítja az ügyfelet a kiválasztott ClaimsProviderSelection szerint, vagy kiszolgálói hívást kezdeményez a jogcímek cseréjére. |
A ClaimsExchange elem a következő attribútumokat tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
| Azonosító | Igen | A jogcímcsere lépés azonosítója. Az azonosítóval hivatkozhat a jogcímek cseréjére a házirend egy jogcímszolgáltatói kiválasztási lépéséből. |
| TechnicalProfileReferenceId | Igen | A végrehajtandó műszaki profil azonosítója. |
Utazási lista
A JourneyList elem a következő elemet tartalmazza:
| Elem | Események | Leírás |
|---|---|---|
| Jelölt | 1:1 | Egy meghívandó alútra mutató hivatkozás. |
Jelölt
A Jelölt elem a következő attribútumokat tartalmazza:
| Attribútum | Kötelező | Leírás |
|---|---|---|
| SubJourneyReferenceId | Igen | A végrehajtandó részút azonosítója. |