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.
Mielőtt hozzákezdene, a lap tetején található Szabályzattípus kiválasztása választóval válassza ki a beállított szabályzat típusát. Az Azure Active Directory B2C két módszert kínál annak meghatározására, hogy a felhasználók hogyan használják az alkalmazásokat: előre definiált felhasználói folyamatokon vagy teljesen konfigurálható egyéni szabályzatokon keresztül. A cikkben szereplő lépések különbözőek az egyes metódusok esetében.
Az egyszeri bejelentkezés (SSO) biztonságot és kényelmet nyújt, ha a felhasználók az Azure Active Directory B2C(Azure AD B2C) alkalmazásaiban jelentkeznek be. Ez a cikk az Azure AD B2C-ben használt egyszeri bejelentkezési módszereket ismerteti, és segít kiválasztani a legmegfelelőbb egyszeri bejelentkezést a szabályzat konfigurálásakor.
Az egyszeri bejelentkezéssel a felhasználók egyszeri bejelentkezéssel jelentkezhetnek be egyetlen fiókkal, és több alkalmazáshoz is hozzáférhetnek. Az alkalmazás lehet web-, mobil- vagy egyoldalas alkalmazás, platformtól vagy tartománynévtől függetlenül.
Amikor a felhasználó először bejelentkezik egy alkalmazásba, az Azure AD B2C egy cookie-alapú munkamenetet őriz meg. A későbbi hitelesítési kérések esetén az Azure AD B2C beolvassa és ellenőrzi a cookie-alapú munkamenetet, és hozzáférési jogkivonatot ad ki anélkül, hogy a felhasználó ismételt bejelentkezésre kéri. Ha a cookie-alapú munkamenet lejár vagy érvénytelenné válik, a rendszer kéri a felhasználót, hogy jelentkezzen be újra.
Megjegyzés:
Ha a felhasználó olyan böngészőt használ, amely letiltja a harmadik féltől származó cookie-kat, a cookie-alapú munkamenethez való korlátozott hozzáférés miatt korlátozott az egyszeri bejelentkezés. A felhasználók számára leginkább látható hatás az, hogy több interakcióra van szükség a bejelentkezéshez. Emellett az előtérbeli csatorna kijelentkezése nem törli azonnal a hitelesítési állapotot az összevont alkalmazásokból. Tekintse meg a böngészőkben a külső cookie-k blokkolásának kezelésével kapcsolatos ajánlott módszereinket.
Előfeltételek
- Hozzon létre egy felhasználói folyamatot , hogy a felhasználók regisztrálhassák és bejelentkezhessenek az alkalmazásba.
- Webalkalmazás regisztrálása.
- Végezze el az Egyéni szabályzatok használatának első lépéseit az Active Directory B2C-ben. Ez az oktatóanyag bemutatja, hogyan frissítheti az egyéni szabályzatfájlokat az Azure AD B2C-bérlő konfigurációjának használatára.
- Webalkalmazás regisztrálása.
Az Azure AD B2C-munkamenet áttekintése
Az Azure AD B2C-vel való integráció háromféle SSO-munkamenetet foglal magában:
- Azure AD B2C – Az Azure AD B2C által felügyelt munkamenet
- Összevont identitásszolgáltató – Az identitásszolgáltató által felügyelt munkamenet, például Facebook, Salesforce vagy Microsoft-fiók
- Alkalmazás – Web-, mobil- vagy egyoldalas alkalmazás által felügyelt munkamenet
Azure AD B2C-munkamenet
Ha egy felhasználó sikeresen hitelesít egy helyi vagy közösségi fiókkal, az Azure AD B2C egy cookie-alapú munkamenetet tárol a felhasználó böngészőjében. A cookie az Azure AD B2C-bérlői tartomány nevénél tárolódik, például https://contoso.b2clogin.com.
Amikor egy felhasználó federált fiókkal jelentkezik be, elindul egy munkamenet időablak, más néven TTL élettartam. Ha a felhasználó ugyanarra vagy egy másik alkalmazásra jelentkezik be ebben a TTL-ben, az Azure AD B2C megpróbál új hozzáférési jogkivonatot beszerezni az összevont identitásszolgáltatótól. Ha az összevont identitásszolgáltató munkamenete lejárt vagy érvénytelen, az összevont identitásszolgáltató kéri a felhasználótól a hitelesítő adatait. Ha a felhasználó munkamenete folyamatban van, vagy ha a felhasználó összevont fiók helyett helyi fiókkal van bejelentkezve, az Azure AD B2C engedélyezi a felhasználót, és megakadályozza a további kéréseket.
Konfigurálhatja a munkamenet viselkedését, beleértve a munkamenet TTL-ét, valamint azt, hogy az Azure AD B2C hogyan osztja meg a munkamenetet a szabályzatok és alkalmazások között.
Összevont identitásszolgáltatói munkamenet
A közösségi vagy vállalati identitásszolgáltató saját munkamenetét kezeli. A cookie-t az identitásszolgáltató tartományneve tárolja, például https://login.salesforce.com. Az Azure AD B2C nem szabályozza az összevont identitásszolgáltató munkamenetét. Ehelyett a munkamenet viselkedését az összevont identitásszolgáltató határozza meg.
Vegyük például a következő esetet:
- A felhasználó bejelentkezik a Facebookra, hogy ellenőrizze a hírcsatornáját.
- Később a felhasználó megnyitja az alkalmazást, és elindítja a bejelentkezési folyamatot. Az alkalmazás átirányítja a felhasználót az Azure AD B2C-be a bejelentkezési folyamat befejezéséhez.
- Az Azure AD B2C regisztrációs vagy bejelentkezési oldalán a felhasználó úgy dönt, hogy a Facebook-fiókjával jelentkezik be. A rendszer átirányítja a felhasználót a Facebookra. Ha aktív munkamenet van a Facebookon, a felhasználónak nem kell megadnia a hitelesítő adatait, és a rendszer azonnal átirányítja az Azure AD B2C-hez egy Facebook-jogkivonattal.
Alkalmazás munkamenete
Egy OAuth2 hozzáférési jogkivonat, azonosító jogkivonat vagy SAML-jogkivonat védelmet nyújthat egy webes, mobil vagy egyoldalas alkalmazásnak. Amikor egy felhasználó megpróbál hozzáférni egy védett erőforráshoz az alkalmazásban, az alkalmazás ellenőrzi, hogy van-e aktív munkamenet az alkalmazás oldalán. Ha egy alkalmazás munkamenete nem létezik, vagy a munkamenet lejár, az alkalmazás átirányítja a felhasználót az Azure AD B2C bejelentkezési oldalára.
Az alkalmazás munkamenete lehet egy cookie-alapú munkamenet, amely az alkalmazás tartományneve alatt van tárolva, például https://contoso.com. A mobilalkalmazások eltérő módon, de hasonló módon tárolhatják a munkamenetet.
Az Azure AD B2C-munkamenet viselkedésének konfigurálása
Konfigurálhatja az Azure AD B2C-munkamenet viselkedését, beleértve a következőket:
Webalkalmazás-munkamenet élettartama (perc) – Az Azure AD B2C munkamenet cookie-jának tárolása a felhasználó böngészőjében a sikeres hitelesítés után. A munkamenet élettartama legfeljebb 24 óra lehet.
Webalkalmazás munkamenetének időkorlátja – Azt jelzi, hogy a munkamenet hosszabbítását a munkamenet élettartamának beállítása vagy a „Tartson bejelentkezve” (KMSI) beállítás hogyan befolyásolja.
- Működés közben – Azt jelzi, hogy a munkamenet minden alkalommal meghosszabbodik, amikor a felhasználó cookie-alapú hitelesítést végez (alapértelmezett).
- Abszolút – Azt jelzi, hogy a felhasználónak a megadott idő elteltével újra meg kell ismételnie a hitelesítést.
Egyszeri bejelentkezési konfiguráció – Az Azure AD B2C-munkamenet a következő hatókörökkel konfigurálható:
- Bérlő – Ez a beállítás az alapértelmezett beállítás. Ezzel a beállítással több alkalmazás és felhasználói folyamat is megosztható a B2C-bérlőben ugyanazon a felhasználói munkameneten. Ha például egy felhasználó bejelentkezik egy alkalmazásba, a felhasználó a hozzáféréskor zökkenőmentesen bejelentkezhet egy másikba is.
- Alkalmazás – Ez a beállítás lehetővé teszi, hogy a felhasználói munkamenetet kizárólag egy alkalmazáshoz tartsa karban, más alkalmazásoktól függetlenül. Ezt a beállítást például akkor használhatja, ha azt szeretné, hogy a felhasználó jelentkezzen be a Contoso Gyógyszertárba, függetlenül attól, hogy a felhasználó már bejelentkezett-e a Contoso Groceries szolgáltatásba.
- Házirend – Ez a beállítás lehetővé teszi, hogy a felhasználói munkameneteket kizárólag egy felhasználói folyamat számára tarthassa fenn, függetlenül az azt használó alkalmazásoktól. Az Azure AD B2C például több alkalmazás magasabb biztonsági részeihez biztosít hozzáférést, ha a felhasználó már bejelentkezett, és végrehajtott egy többtényezős hitelesítési (MFA) lépést. Ez a hozzáférés addig folytatódik, amíg a felhasználói folyamathoz társított munkamenet aktív marad.
- Letiltva – Ez a beállítás arra kényszeríti a felhasználót, hogy a szabályzat minden végrehajtásakor végigfuttassa a teljes felhasználói folyamatot.
A felhasználói folyamat konfigurálása
A felhasználói folyamat munkamenet-viselkedésének konfigurálásához kövesse az alábbi lépéseket:
- Jelentkezzen be a Azure portalra.
- Ha több bérlőhöz is hozzáférése van, a felső menüben a Beállítások ikont választva váltson az Azure AD B2C-bérlőre a Címtárak + előfizetések menüből.
- Válassza az Összes szolgáltatást az Azure Portal bal felső sarkában, majd keresse meg és válassza az Azure AD B2C-t.
- Válassza ki a felhasználói folyamatokat.
- Nyissa meg a korábban létrehozott felhasználói folyamatot.
- Válassza a Tulajdonságokelemet.
- Konfigurálja a webalkalmazás munkamenetének élettartamát (perc),a webalkalmazás munkamenetének időtúllépését, az egyszeri bejelentkezés konfigurálását és az azonosító jogkivonat megkövetelését a bejelentkezési kérelmekben , ha szükséges.
- Válassza az Mentésgombot.
Az egyéni szabályzat konfigurálása
A munkamenet viselkedésének egyéni szabályzatban való konfigurálásához kövesse az alábbi lépéseket:
Nyissa meg a függő entitás (RP) fájlját, például SignUpOrSignin.xml
Ha még nem létezik, adja hozzá a következő
<UserJourneyBehaviors>elemet az<RelyingParty>elemhez. Közvetlenül utána<DefaultUserJourney ReferenceId="UserJourney Id"/>kell lennie.<UserJourneyBehaviors> <SingleSignOn Scope="Application" /> <SessionExpiryType>Absolute</SessionExpiryType> <SessionExpiryInSeconds>86400</SessionExpiryInSeconds> </UserJourneyBehaviors>A felhasználói folyamat viselkedési elemeinek hozzáadása után az
RelyingPartyelemnek az alábbi példához hasonlóan kell kinéznie:<RelyingParty> <DefaultUserJourney ReferenceId="SignUpOrSignIn" /> <UserJourneyBehaviors> <SingleSignOn Scope="Application" /> <SessionExpiryType>Absolute</SessionExpiryType> <SessionExpiryInSeconds>86400</SessionExpiryInSeconds> </UserJourneyBehaviors> <TechnicalProfile Id="PolicyProfile"> <DisplayName>PolicyProfile</DisplayName> <Protocol Name="OpenIdConnect" /> <OutputClaims> <OutputClaim ClaimTypeReferenceId="displayName" /> <OutputClaim ClaimTypeReferenceId="givenName" /> ... </OutputClaims> <SubjectNamingInfo ClaimType="sub" /> </TechnicalProfile> </RelyingParty>Módosítsa az
Scopeattribútum értékét az egyik lehetséges értékre:Suppressed,Tenant,ApplicationvagyPolicy. További információt a RelyingParty referenciacikkében talál.Állítsa be az elemet a
SessionExpiryTypekövetkezőreRolling: vagyAbsolute. További információt a RelyingParty referenciacikkében talál.Állítsa az
SessionExpiryInSecondselemet numerikus értékre 900 másodperc (15 perc) és 86 400 másodperc (24 óra) között. További információt a RelyingParty referenciacikkében talál.
Bejelentkezés engedélyezése (KMSI)
Engedélyezheti a KMSI funkciót a webes és natív alkalmazások azon felhasználói számára, akik helyi fiókkal rendelkeznek az Azure AD B2C-címtárban. Ha engedélyezi a funkciót, a felhasználók úgy dönthetnek, hogy bejelentkezve maradnak, így a munkamenet aktív marad a böngésző bezárása után. A munkamenet egy állandó cookie beállításával tartható fenn. A KMSI-t választó felhasználók anélkül nyithatják meg újra a böngészőt, hogy a felhasználónevüket és jelszavukat újra meg kell adniuk. Ezt a hozzáférést (az állandó cookie-t) a rendszer visszavonja, amikor egy felhasználó kijelentkezik. További információkért tekintse meg az Élő bemutatót.
A KMSI az egyes felhasználói folyamatok szintjén konfigurálható. Mielőtt engedélyezi a KMSI-t a felhasználói folyamatokhoz, fontolja meg a következőket:
- A KMSI csak a regisztrációs és bejelentkezési (SUSI), bejelentkezési és profilszerkesztési felhasználói folyamatok ajánlott verzióiban támogatott. Ha jelenleg standard (örökölt) vagy örökölt előzetes verzióval rendelkezik – ezeknek a felhasználói folyamatoknak a 2. verziójú verziója, és engedélyezni szeretné a KMSI-t, létre kell hoznia ezeknek a felhasználói folyamatoknak az új, ajánlott verzióit .
- A KMSI nem támogatott jelszó-visszaállítással vagy regisztrációs felhasználói folyamatokkal.
- Ha engedélyezni szeretné a KMSI-t a bérlő összes alkalmazásához, javasoljuk, hogy engedélyezze a KMSI-t a bérlő összes felhasználói folyamatához. Mivel egy felhasználó több szabályzattal is rendelkezhet egy munkamenet során, előfordulhat, hogy olyannal találkozik, amely nem rendelkezik engedélyezve a KMSI-vel, ami eltávolítja a KMSI-cookie-t a munkamenetből.
- A KMSI-t nem szabad engedélyezni a nyilvános számítógépeken.
KMSI konfigurálása felhasználói folyamathoz
A KMSI engedélyezése a felhasználói folyamathoz:
Jelentkezzen be a Azure portalra.
Ha több bérlőhöz is hozzáférése van, a felső menüben a Beállítások ikont választva váltson az Azure AD B2C-bérlőre a Címtárak + előfizetések menüből.
Válassza az Összes szolgáltatást az Azure Portal bal felső sarkában, majd keresse meg és válassza az Azure AD B2C-t.
Felhasználói folyamatok (szabályzatok) kiválasztása.
Nyissa meg a korábban létrehozott felhasználói folyamatot.
Válassza a Tulajdonságokelemet.
A Munkamenet viselkedése csoportban válassza az Engedélyezés, hogy bejelentkezve legyek a munkamenetbe. A munkamenetben (napok) való bejelentkezés megtartása mellett adjon meg egy 1 és 90 közötti értéket, amely megadja, hogy egy munkamenet hány napig maradhat nyitva.
A felhasználók nem engedélyezhetik ezt a beállítást a nyilvános számítógépeken.
Az oldalazonosító konfigurálása
A KMSI engedélyezéséhez állítsa a tartalomdefiníciós DataUri elemet oldalazonosítóraunifiedssp és az oldal 1.1.0-s vagy újabb verziójára.
Nyissa meg a szabályzat bővítményfájlját. Például:
SocialAndLocalAccounts/TrustFrameworkExtensions.xml. Ez a bővítményfájl az egyéni szabályzatok kezdőcsomagjának egyik szabályzatfájlja, amelyet az előfeltételben, az egyéni szabályzatok használatának első lépéseiben szerezhet be.Keresse meg a BuildingBlocks elemet. Ha az elem nem létezik, adja hozzá.
Adja hozzá a ContentDefinitions elemet a szabályzat BuildingBlocks eleméhez.
Az egyéni szabályzatnak a következő kódrészlethez hasonlóan kell kinéznie:
<BuildingBlocks> <ContentDefinitions> <ContentDefinition Id="api.signuporsignin"> <DataUri>urn:com:microsoft:aad:b2c:elements:unifiedssp:1.1.0</DataUri> </ContentDefinition> </ContentDefinitions> </BuildingBlocks>
Metaadatok hozzáadása az önérvényesített műszaki profilhoz
Ha hozzá szeretné adni a KMSI jelölőnégyzetet a regisztrációs és bejelentkezési laphoz, állítsa a setting.enableRememberMe metaadatokat igaz értékre. Felülbírálja a SelfAsserted-LocalAccountSignin-Email technikai profilokat a bővítményfájlban.
Keresse meg a ClaimsProviders elemet. Ha az elem nem létezik, adja hozzá.
Adja hozzá a következő jogcímszolgáltatót a ClaimsProviders elemhez:
<ClaimsProvider> <DisplayName>Local Account</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="SelfAsserted-LocalAccountSignin-Email"> <Metadata> <Item Key="setting.enableRememberMe">True</Item> </Metadata> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>Mentse a bővítményfájlt.
Függő entitásfájl konfigurálása
Frissítse a létrehozott felhasználói folyamatot kezdeményező függő entitásfájlt (RP). A keepAliveInDays paraméter lehetővé teszi annak konfigurálását, hogy mennyi ideig maradjon meg a bejelentkezett (KMSI) munkamenet-cookie. Ha például 30-ra állítja az értéket, akkor a KMSI munkamenet cookie 30 napig megmarad. Az érték tartománya 1 és 90 nap között van. Az érték 0 értékre állítása kikapcsolja a KMSI-funkciókat.
Nyissa meg az egyéni házirend fájlt. Például SignUpOrSignin.xml.
Ha még nem létezik, adjon hozzá egy
<UserJourneyBehaviors>gyermekcsomópontot a<RelyingParty>csomóponthoz. Közvetlenül a<DefaultUserJourney ReferenceId="User journey Id" />után kell elhelyezkednie, például:<DefaultUserJourney ReferenceId="SignUpOrSignIn" />.Adja hozzá a következő csomópontot az
<UserJourneyBehaviors>elem gyermekeként.<UserJourneyBehaviors> <SingleSignOn Scope="Tenant" KeepAliveInDays="30" /> <SessionExpiryType>Absolute</SessionExpiryType> <SessionExpiryInSeconds>1200</SessionExpiryInSeconds> </UserJourneyBehaviors>
A KeepAliveInDays és a SessionExpiryInSeconds beállítást is úgy állítja be, hogy a bejelentkezés során, ha egy felhasználó engedélyezi a KMSI-t, a KeepAliveInDays a cookie-k beállítására szolgál, ellenkező esetben a SessionExpiryInSeconds paraméterben megadott érték lesz használva. Javasoljuk, hogy a SessionExpiryInSeconds értékének rövid (1200 másodperc) legyen, míg a KeepAliveInDays értéke viszonylag hosszú (30 nap) értékre állítható, ahogyan az alábbi példában látható:
<RelyingParty>
<DefaultUserJourney ReferenceId="SignUpOrSignIn" />
<UserJourneyBehaviors>
<SingleSignOn Scope="Tenant" KeepAliveInDays="30" />
<SessionExpiryType>Absolute</SessionExpiryType>
<SessionExpiryInSeconds>1200</SessionExpiryInSeconds>
</UserJourneyBehaviors>
<TechnicalProfile Id="PolicyProfile">
<DisplayName>PolicyProfile</DisplayName>
<Protocol Name="OpenIdConnect" />
<OutputClaims>
<OutputClaim ClaimTypeReferenceId="displayName" />
<OutputClaim ClaimTypeReferenceId="givenName" />
<OutputClaim ClaimTypeReferenceId="surname" />
<OutputClaim ClaimTypeReferenceId="email" />
<OutputClaim ClaimTypeReferenceId="objectId" PartnerClaimType="sub"/>
<OutputClaim ClaimTypeReferenceId="identityProvider" />
<OutputClaim ClaimTypeReferenceId="tenantId" AlwaysUseDefaultValue="true" DefaultValue="{Policy:TenantObjectId}" />
</OutputClaims>
<SubjectNamingInfo ClaimType="sub" />
</TechnicalProfile>
</RelyingParty>
Kijelentkezés
Ha ki szeretné jelentkeztetni a felhasználót az alkalmazásból, nem elég törölni az alkalmazás cookie-ját, vagy más módon befejezni a munkamenetet a felhasználóval. A kijelentkezéshez át kell irányítania a felhasználót az Azure AD B2C-be. Ellenkező esetben előfordulhat, hogy a felhasználó újrahitelesíti az alkalmazásokat anélkül, hogy újból meg kellene adnia a hitelesítő adatait.
Azure AD B2C kijelentkezési kérelem esetén:
- Érvényteleníti az Azure AD B2C cookie-alapú munkamenetét.
- Az összevont identitásszolgáltatóktól való kijelentkezés kísérlete.
- Érvényteleníti az Azure AD B2C cookie-alapú munkamenetét.
- Az összevont identitásszolgáltatóktól való kijelentkezés kísérlete:
- OpenId Connect – Ha az identitásszolgáltató jól ismert konfigurációs végpontja meghatároz egy
end_session_endpointhelyet. A kijelentkezési kérelem nem adja át aid_token_hintparamétert. Ha az összevont identitásszolgáltató megköveteli ezt a paramétert, a bejelentkezési kérés meghiúsul. - OAuth2 – Ha az identitásszolgáltató metaadatai tartalmazzák a
end_session_endpointhelyet. - SAML – Ha az identitásszolgáltató metaadatai tartalmazzák a
SingleLogoutServicehelyet.
- OpenId Connect – Ha az identitásszolgáltató jól ismert konfigurációs végpontja meghatároz egy
- Másik lehetőségként kijelentkezés más alkalmazásokból. További információkért tekintse meg az egyszeri kijelentkezés szakaszt .
Megjegyzés:
Letilthatja a kijelentkezéseket az összevont identitásszolgáltatókból, ha az identitásszolgáltató műszaki profil metaadatait a következőre falseállítjaSingleLogoutEnabled.
A kijelentkezés törli a felhasználó egyszeri bejelentkezési állapotát az Azure AD B2C-vel, de előfordulhat, hogy nem kijelentkezteti a felhasználót a közösségi identitásszolgáltatói munkamenetből. Ha a felhasználó ugyanazt az identitásszolgáltatót választja egy későbbi bejelentkezés során, előfordulhat, hogy hitelesítő adataik megadása nélkül újrahitelesíti őket. Ha egy felhasználó ki szeretne jelentkezni az alkalmazásból, az nem feltétlenül jelenti azt, hogy ki szeretne jelentkezni a Facebook-fiókjából. Ha azonban helyi fiókokat használ, a felhasználó munkamenete megfelelően véget ér.
Egyszeri kijelentkezés
Amikor átirányítja a felhasználót az Azure AD B2C bejelentkezési végpontjára (OAuth2 és OpenID Connect esetén is), vagy küld egy LogoutRequest (SAML-hez készült) fájlt, az Azure AD B2C törli a felhasználó munkamenetét a böngészőből. Előfordulhat azonban, hogy a felhasználó továbbra is bejelentkezett más alkalmazásokba, amelyek az Azure AD B2C-t használják hitelesítésre. Ha a felhasználót az összes aktív munkamenetet használó alkalmazásból ki szeretné jelentkezni, az Azure AD B2C támogatja az egyszeri bejelentkezést, más néven egyszeri Log-Out (SLO) néven.
A kijelentkezés során az Azure AD B2C egyidejűleg http-kérést küld az összes alkalmazás regisztrált kijelentkezési URL-címére, amelyre a felhasználó jelenleg bejelentkezett.
Egyéni szabályzat konfigurálása
Az egyszeri kijelentkezés támogatásához a JWT és az SAML tokenkibocsátó technikai profiljainak meg kell adniuk a következőket:
- A protokoll neve, például
<Protocol Name="OpenIdConnect" /> - A munkamenet technikai profiljára mutató hivatkozás, például
UseTechnicalProfileForSessionManagement ReferenceId="SM-jwt-issuer" />.
Az alábbi példa az egyszeri kijelentkezéssel rendelkező JWT- és SAML-jogkivonat-kiállítókat mutatja be:
<ClaimsProvider>
<DisplayName>Local Account SignIn</DisplayName>
<TechnicalProfiles>
<!-- JWT Issuer -->
<TechnicalProfile Id="JwtIssuer">
<DisplayName>JWT Issuer</DisplayName>
<Protocol Name="OpenIdConnect" />
<OutputTokenFormat>JWT</OutputTokenFormat>
...
<UseTechnicalProfileForSessionManagement ReferenceId="SM-jwt-issuer" />
</TechnicalProfile>
<!-- Session management technical profile for OIDC based tokens -->
<TechnicalProfile Id="SM-jwt-issuer">
<DisplayName>Session Management Provider</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.OAuthSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</TechnicalProfile>
<!--SAML token issuer-->
<TechnicalProfile Id="Saml2AssertionIssuer">
<DisplayName>SAML token issuer</DisplayName>
<Protocol Name="SAML2" />
<OutputTokenFormat>SAML2</OutputTokenFormat>
...
<UseTechnicalProfileForSessionManagement ReferenceId="SM-Saml-issuer" />
</TechnicalProfile>
<!-- Session management technical profile for SAML based tokens -->
<TechnicalProfile Id="SM-Saml-issuer">
<DisplayName>Session Management Provider</DisplayName>
<Protocol Name="Proprietary" Handler="Web.TPEngine.SSO.SamlSSOSessionProvider, Web.TPEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</TechnicalProfile>
</TechnicalProfiles>
</ClaimsProvider>
Az alkalmazás konfigurálása
Annak érdekében, hogy egy alkalmazás részt vegyen az egyszeri kijelentkezésben:
-
SAML-szolgáltatók esetén konfigurálja az alkalmazást a SingleLogoutService helyével a SAML metaadat-dokumentumában. Az alkalmazásregisztrációt
logoutUrlis konfigurálhatja. További információ: a kijelentkezés URL-címének beállítása. - OpenID Connect- vagy OAuth2-alkalmazások esetén adja meg az
logoutUrlalkalmazásregisztrációs jegyzék attribútumát. A kijelentkezés URL-címének konfigurálása:- Az Azure AD B2C menüjében válassza az Alkalmazásregisztrációk lehetőséget.
- Válassza ki az alkalmazásregisztrációt.
- A Kezelés területen válassza a Hitelesítés lehetőséget.
- Az előtérbeli bejelentkezési URL-cím alatt konfigurálja a kijelentkezés URL-címét.
Egyszeri bejelentkezési kérelmek kezelése
Amikor az Azure AD B2C megkapja a kijelentkezési kérelmet, egy előtérbeli HTML-iframe használatával http-kérést küld minden olyan résztvevő alkalmazás regisztrált bejelentkezési URL-címére, amelyre a felhasználó jelenleg bejelentkezett. Vegye figyelembe, hogy a kijelentkezés kérését kezdeményező alkalmazás megkapja ezt a kijelentkezést jelző üzenetet. Az alkalmazásoknak a felhasználót azonosító alkalmazás-munkamenet törlésével kell válaszolniuk a bejelentkezési kérésre.
- OpenID Connect- és OAuth2-alkalmazások esetén az Azure AD B2C HTTP GET kérést küld a regisztrált kijelentkezési URL-címre.
- SAML-alkalmazások esetén az Azure AD B2C saml-kijelentkezési kérelmet küld a regisztrált kijelentkezési URL-címre.
Amikor az Azure AD B2C értesíti az összes alkalmazást a kijelentkezésről, a következő műveletek egyikét hajtja végre:
- OpenID Connect- vagy OAuth2-alkalmazások esetén átirányítja a felhasználót a kértre
post_logout_redirect_uri, beleértve a kezdeti kérelemben megadott (nem kötelező)stateparamétert is. Például:https://contoso.com/logout?state=foo. - SAML-alkalmazások esetén a RENDSZER a HTTP POST-en keresztül küld egy SAML-kijelentkezési választ a kijelentkezési kérelmet eredetileg küldő alkalmazásnak.
A kijelentkezés átirányításának védelme
A kijelentkezés után a rendszer átirányítja a felhasználót a paraméterben post_logout_redirect_uri megadott URI-ra, függetlenül az alkalmazáshoz megadott válasz URL-címektől. Ha azonban érvényes id_token_hint értéket ad meg, és a kijelentkezési kérelmekben engedélyezve van az azonosító jogkivonat, az Azure AD B2C ellenőrzi, hogy a post_logout_redirect_uri érték megegyezik-e az alkalmazás egyik konfigurált átirányítási URI-jával az átirányítás végrehajtása előtt. Ha nem lett konfigurálva egyező válasz URL-cím az alkalmazáshoz, hibaüzenet jelenik meg, és a felhasználó nem lesz átirányítva.
Azonosító jogkivonat megkövetelése a bejelentkezési kérelmekben:
- Jelentkezzen be a Azure portalra.
- Ha több bérlőhöz is hozzáférése van, a felső menüben a Beállítások ikont választva váltson az Azure AD B2C-bérlőre a Címtárak + előfizetések menüből.
- Válassza az Összes szolgáltatást az Azure Portal bal felső sarkában, majd keresse meg és válassza az Azure AD B2C-t.
- Válassza ki a felhasználói folyamatokat.
- Nyissa meg a korábban létrehozott felhasználói folyamatot.
- Válassza a Tulajdonságokelemet.
- Engedélyezze az azonosító-jogkivonat megkövetelését a bejelentkezési kérelmekben.
Ha azonosító jogkivonatot szeretne igényelni a kijelentkezési kérelmekben, adjon hozzá egy UserJourneyBehaviors elemet a RelyingParty elemen belül. Ezután állítsa a SingleSignOn elem EnforceIdTokenHintOnLogout elemét a következőretrue: . További információkért tekintse meg az Élő bemutatót. A UserJourneyBehaviors elemnek a következő példához hasonlóan kell kinéznie:
<UserJourneyBehaviors>
<SingleSignOn Scope="Tenant" EnforceIdTokenHintOnLogout="true"/>
</UserJourneyBehaviors>
Az alkalmazás-kijelentkezés URL-címének konfigurálása:
- Válassza ki az alkalmazásregisztrációkat, majd válassza ki az alkalmazást.
- Válassza a Hitelesítés lehetőséget.
- A Kijelentkezés URL-címe szövegmezőbe írja be a kijelentkezés utáni átirányítási URI-t, majd válassza a Mentés lehetőséget.
Kapcsolódó tartalom
- Megtudhatja, hogyan konfigurálhat jogkivonatokat az Azure AD B2C-ben.