Regisztráció és bejelentkezés beállítása Google-fiókkal a Azure Active Directory B2C használatával
Mielőtt hozzákezdene, válassza ki a beállított szabályzattípust a Szabályzattípus kiválasztása választóval. 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 meghatározott felhasználói folyamatokon vagy teljes mértékben konfigurálható egyéni szabályzatokon keresztül. Az ebben a cikkben leírt lépések különbözőek az egyes metódusok esetében.
Fontos
2021. szeptember 30-tól a Google elavulttá tette a webes megtekintési bejelentkezési támogatást. Ha alkalmazásai beágyazott webnézettel hitelesítik a felhasználókat, és a Google összevonást Azure AD B2C-vel használják, a Google Gmail-felhasználók nem fognak tudni hitelesíteni. További információ.
Megjegyzés
A Azure Active Directory B2C-ben az egyéni szabályzatok elsősorban összetett forgatókönyvek 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, megismerheti az egyéni szabályzatok kezdőcsomagját Első lépések egyéni szabályzatokkal az Active Directory B2C-ben.
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.
- Hajtsa végre a Első lépések lépéseit egyéni szabályzatokkal az Active Directory B2C-ben
- Webalkalmazás regisztrálása.
Google-alkalmazás létrehozása
Ha engedélyezni szeretné a google-fiókkal rendelkező felhasználók bejelentkezését a Azure Active Directory B2C-ben (Azure AD B2C), létre kell hoznia egy alkalmazást a Google Fejlesztői konzolon. További információ: Az OAuth 2.0 beállítása. Ha még nem rendelkezik Google-fiókkal, regisztrálhat a következő helyen https://accounts.google.com/signup: .
- Jelentkezzen be a Google Fejlesztői konzolra Google-fiókjának hitelesítő adataival.
- A lap bal felső sarkában válassza ki a projektlistát, majd válassza az Új Project lehetőséget.
- Adjon meg egy Project nevet, és válassza a Létrehozás lehetőséget.
- Győződjön meg arról, hogy az új projektet használja. Ehhez válassza ki a projekt legördülő menüt a képernyő bal felső sarkában. Válassza ki a projektet név szerint, majd válassza a Megnyitás lehetőséget.
- A bal oldali menüben válassza az API-kat és a szolgáltatásokat , majd az OAuth hozzájárulási képernyőt. Válassza a Külső , majd a Létrehozás lehetőséget.
- Adja meg az alkalmazás nevét .
- Válasszon egy felhasználói támogatási e-mailt.
- Az Alkalmazástartomány szakaszban adja meg az alkalmazás kezdőlapjára mutató hivatkozást, az alkalmazás adatvédelmi szabályzatára mutató hivatkozást, valamint az alkalmazás szolgáltatási feltételeire mutató hivatkozást.
- Az Engedélyezett tartományok szakaszban adja meg a b2clogin.com.
- A Fejlesztői kapcsolattartási adatok szakaszban írjon be vesszővel tagolt e-maileket a Google-nak, hogy értesítse Önt a projekt módosításairól.
- Kattintson a Mentés gombra.
- A bal oldali menüben válassza a Hitelesítő adatok lehetőséget, majd válassza a Hitelesítő adatok> létrehozásaOauth-ügyfélazonosító lehetőséget.
- Az Alkalmazás típusa területen válassza ki a webalkalmazást.
- Adja meg az alkalmazás nevét .
- Az engedélyezett JavaScript-forrásokhoz írja be a következőt
https://your-tenant-name.b2clogin.com: . Ha egyéni tartományt használ, írja be a következőthttps://your-domain-name: . - Az Engedélyezett átirányítási URI-k esetében adja meg a következőt
https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp: . Ha egyéni tartományt használ, írja be a következőthttps://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp: . Cserélje leyour-domain-nameaz egyéni tartományra ésyour-tenant-namea bérlő nevére. A bérlő nevének megadásakor minden kisbetűt használjon akkor is, ha a bérlő nagybetűkkel van definiálva Azure AD B2C-ben.
- Kattintson a Létrehozás lehetőségre.
- Másolja ki az ügyfél-azonosító és az ügyfélkulcs értékeit. Mindkettőre szüksége lesz a Google identitásszolgáltatóként való konfigurálásához a bérlőben. Az ügyfél titkos kódja fontos biztonsági hitelesítő adat.
A Google konfigurálása identitásszolgáltatóként
- Jelentkezzen be az Azure Portalra az Azure AD B2C-bérlő globális rendszergazdájaként.
- Győződjön meg arról, hogy a Azure AD B2C-bérlőt tartalmazó könyvtárat használja. Válassza a Címtárak és előfizetések ikont a portál eszköztárán.
- A Portál beállításai | A Címtárak és előfizetések lapon keresse meg a Azure AD B2C-címtárat a Címtárnév listában, majd válassza a Váltás lehetőséget.
- Válassza az Azure Portal bal felső sarkában található Minden szolgáltatás lehetőséget, majd keresse meg és válassza ki az Azure AD B2C-t.
- Válassza ki az identitásszolgáltatókat, majd a Google-t.
- Adjon meg egy nevet. Például a Google.
- Az ügyfél-azonosítóhoz adja meg a korábban létrehozott Google-alkalmazás ügyfél-azonosítóját.
- Az ügyfél titkos kódjának megadásához adja meg a rögzített titkos ügyfélkulcsot.
- Kattintson a Mentés gombra.
Google-identitásszolgáltató hozzáadása felhasználói folyamathoz
Ezen a ponton a Google identitásszolgáltatója már be van állítva, de még nem érhető el egyik bejelentkezési oldalon sem. A Google-identitásszolgáltató hozzáadása egy felhasználói folyamathoz:
- A Azure AD B2C-bérlőben válassza a Felhasználói folyamatok lehetőséget.
- Kattintson arra a felhasználói folyamatra, amelyet hozzá szeretne adni a Google identitásszolgáltatóhoz.
- A Közösségi identitásszolgáltatók területen válassza a Google lehetőséget.
- Kattintson a Mentés gombra.
- A szabályzat teszteléséhez válassza a Felhasználói folyamat futtatása lehetőséget.
- Az Application esetében válassza ki a testapp1 nevű webalkalmazást, amelyet korábban regisztrált. A válasz URL-címének meg kell jelennie
https://jwt.ms. - Válassza a Felhasználói folyamat futtatása gombot.
- A regisztrációs vagy bejelentkezési oldalon válassza a Google-t a Google-fiókkal való bejelentkezéshez.
Ha a bejelentkezési folyamat sikeres, a rendszer átirányítja a böngészőt a Azure AD B2C által visszaadott jogkivonat tartalmának megjelenítéséhezhttps://jwt.ms.
Szabályzatkulcs létrehozása
A korábban a Azure AD B2C-bérlőben rögzített ügyfélkulcsot kell tárolnia.
- Jelentkezzen be az Azure Portalra.
- Győződjön meg arról, hogy a Azure AD B2C-bérlőt tartalmazó könyvtárat használja. Válassza a Címtárak és előfizetések ikont a portál eszköztárán.
- A Portál beállításai | A Címtárak és előfizetések lapon keresse meg a Azure AD B2C-címtárat a Címtárnév listában, majd válassza a Váltás lehetőséget.
- A Azure Portal bal felső sarkában válassza a Minden szolgáltatás lehetőséget, majd keresse meg és válassza ki Azure AD B2C-t.
- Az Áttekintés lapon válassza az Identity Experience Framework lehetőséget.
- Válassza a Házirendkulcsok , majd a Hozzáadás lehetőséget.
- A Beállítások beállításnál válassza a
Manuallehetőséget. - Adja meg a szabályzatkulcs nevét . Például:
GoogleSecret. A rendszer automatikusan hozzáadja az előtagotB2C_1A_a kulcs nevéhez. - A Titkos kód mezőbe írja be a korábban rögzített titkos ügyfélkulcsot.
- Kulcshasználat esetén válassza a
Signaturelehetőséget. - Kattintson a Létrehozás lehetőségre.
A Google konfigurálása identitásszolgáltatóként
Ahhoz, hogy a felhasználók Google-fiókkal jelentkezzenek be, meg kell határoznia a fiókot jogcímszolgáltatóként, amellyel Azure AD B2C kommunikálhat egy végponton keresztül. A végpont olyan jogcímeket biztosít, amelyeket a Azure AD B2C használ annak ellenőrzésére, hogy egy adott felhasználó hitelesített-e.
A Google-fiók jogcímszolgáltatóként való definiálásához adja hozzá a szabályzat bővítményfájljában található ClaimsProviders elemhez.
Nyissa meg a TrustFrameworkExtensions.xml.
Keresse meg a ClaimsProviders elemet. Ha nem létezik, adja hozzá a gyökérelemhez.
Adjon hozzá egy új ClaimsProvidert az alábbiak szerint:
<ClaimsProvider> <Domain>google.com</Domain> <DisplayName>Google</DisplayName> <TechnicalProfiles> <TechnicalProfile Id="Google-OAuth2"> <DisplayName>Google</DisplayName> <Protocol Name="OAuth2" /> <Metadata> <Item Key="ProviderName">google</Item> <Item Key="authorization_endpoint">https://accounts.google.com/o/oauth2/auth</Item> <Item Key="AccessTokenEndpoint">https://accounts.google.com/o/oauth2/token</Item> <Item Key="ClaimsEndpoint">https://www.googleapis.com/oauth2/v1/userinfo</Item> <Item Key="scope">email profile</Item> <Item Key="HttpBinding">POST</Item> <Item Key="UsePolicyInRedirectUri">false</Item> <Item Key="client_id">Your Google application ID</Item> </Metadata> <CryptographicKeys> <Key Id="client_secret" StorageReferenceId="B2C_1A_GoogleSecret" /> </CryptographicKeys> <OutputClaims> <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="id" /> <OutputClaim ClaimTypeReferenceId="email" PartnerClaimType="email" /> <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="given_name" /> <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="family_name" /> <OutputClaim ClaimTypeReferenceId="displayName" PartnerClaimType="name" /> <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="google.com" /> <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" /> </OutputClaims> <OutputClaimsTransformations> <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName" /> <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName" /> <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId" /> <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId" /> </OutputClaimsTransformations> <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" /> </TechnicalProfile> </TechnicalProfiles> </ClaimsProvider>Állítsa client_id az alkalmazásregisztrációból származó alkalmazásazonosítóra.
Mentse a fájlt.
Felhasználói folyamat hozzáadása
Ezen a ponton az identitásszolgáltató be van állítva, de még nem érhető el egyik bejelentkezési oldalon sem. Ha nem rendelkezik saját egyéni felhasználói folyamatával, hozzon létre egy példányt egy meglévő sablonfelhasználói folyamatból, ellenkező esetben folytassa a következő lépéssel.
- Nyissa meg az TrustFrameworkBase.xml fájlt a kezdőcsomagból.
- Keresse meg és másolja ki a UserJourney elem teljes tartalmát, amely tartalmazza a következőket:
Id="SignUpOrSignIn". - Nyissa meg a TrustFrameworkExtensions.xml , és keresse meg a UserJourneys elemet. Ha az elem nem létezik, adjon hozzá egyet.
- Illessze be a UserJourney elem gyermekelemeként kimásolt UserJourney elem teljes tartalmát.
- Nevezze át a felhasználói folyamat azonosítóját. Például:
Id="CustomSignUpSignIn".
Az identitásszolgáltató hozzáadása egy felhasználói folyamathoz
Most, hogy elkészült a felhasználói folyamat, adja hozzá az új identitásszolgáltatót a felhasználói folyamathoz. Először vegyen fel egy bejelentkezési gombot, majd kapcsolja a gombot egy művelethez. A művelet a korábban létrehozott technikai profil.
Keresse meg a vezénylési lépés azon elemét, amely tartalmazza
Type="CombinedSignInAndSignUp"a felhasználóiType="ClaimsProviderSelection"folyamatot. Általában ez az első vezénylési lépés. A ClaimsProviderSelections elem azon identitásszolgáltatók listáját tartalmazza, amelyekkel a felhasználó bejelentkezhet. Az elemek sorrendje határozza meg a felhasználónak megjelenő bejelentkezési gombok sorrendjét. Adjon hozzá egy ClaimsProviderSelection XML-elemet. Állítsa a TargetClaimsExchangeId értékét egy felhasználóbarát névre.A következő vezénylési lépésben adjon hozzá egy ClaimsExchange elemet. Állítsa az azonosítót a céljogcímcsere-azonosító értékére. Frissítse a TechnicalProfileReferenceId értékét a korábban létrehozott műszaki profil azonosítójára.
A következő XML a felhasználói folyamat első két vezénylési lépését mutatja be az identitásszolgáltatóval:
<OrchestrationStep Order="1" Type="CombinedSignInAndSignUp" ContentDefinitionReferenceId="api.signuporsignin">
<ClaimsProviderSelections>
...
<ClaimsProviderSelection TargetClaimsExchangeId="GoogleExchange" />
</ClaimsProviderSelections>
...
</OrchestrationStep>
<OrchestrationStep Order="2" Type="ClaimsExchange">
...
<ClaimsExchanges>
<ClaimsExchange Id="GoogleExchange" TechnicalProfileReferenceId="Google-OAuth2" />
</ClaimsExchanges>
</OrchestrationStep>
A függő entitás házirendjének konfigurálása
A függő entitás szabályzata, például SignUpSignIn.xml, meghatározza a felhasználói folyamatot, amelyet a B2C Azure AD végre fog hajtani. Keresse meg a DefaultUserJourney elemet a függő entitáson belül. Frissítse a ReferenceId azonosítót úgy, hogy megegyezzon a felhasználói út azonosítójával, amelyben hozzáadta az identitásszolgáltatót.
A következő példában a CustomSignUpSignIn felhasználói folyamat esetében a ReferenceId a következőre CustomSignUpSignInvan állítva:
<RelyingParty>
<DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
...
</RelyingParty>
Az egyéni szabályzat feltöltése
- Jelentkezzen be az Azure Portalra.
- Válassza a Címtár és előfizetés ikont a portál eszköztárán, majd válassza ki a Azure AD B2C-bérlőt tartalmazó címtárat.
- A Azure Portal keresse meg és válassza ki Azure AD B2C-t.
- A Szabályzatok területen válassza az Identity Experience Framework lehetőséget.
- Válassza az Egyéni házirend feltöltése lehetőséget, majd töltse fel a módosított két házirendfájlt a következő sorrendben: a bővítményházirend, például
TrustFrameworkExtensions.xmla függő entitás házirendje, példáulSignUpSignIn.xml.
Az egyéni szabályzat tesztelése
- Válassza ki például
B2C_1A_signup_signina függő entitás szabályzatát. - Alkalmazás esetén válasszon ki egy korábban regisztrált webalkalmazást. A válasz URL-címnek meg kell jelennie
https://jwt.ms. - Válassza a Futtatás most gombot.
- A regisztrációs vagy bejelentkezési oldalon válassza a Google lehetőséget a Google-fiókkal való bejelentkezéshez.
Ha a bejelentkezési folyamat sikeres, a rendszer átirányítja a böngészőthttps://jwt.ms, amely megjeleníti Azure AD B2C által visszaadott jogkivonat tartalmát.
Következő lépések
- Megtudhatja, hogyan adhatja át a Google-jogkivonatot az alkalmazásnak.
- Tekintse meg a Google-összevonás Élő bemutatóját, valamint a Google hozzáférési jogkivonat live bemutatójának átadását