Share via


Regisztráció és bejelentkezés beállítása Apple ID azonosítóval az Azure Active Directory B2C használatával

Mielőtt hozzákezdene, a 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.

Megjegyzé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.

Előfeltételek

Apple ID-alkalmazás létrehozása

Az Azure Active Directory B2C -ben (Azure AD B2C) Apple ID azonosítóval rendelkező felhasználók bejelentkezésének engedélyezéséhez létre kell hoznia egy alkalmazást a következőben https://developer.apple.com: . További információ: Bejelentkezés az Apple-lel. Ha még nem rendelkezik Apple fejlesztői fiókkal, regisztrálhat az Apple Developer Programban.

  1. Jelentkezzen be az Apple Fejlesztői portálra a fiók hitelesítő adataival.
  2. A menüben válassza a Tanúsítványok, azonosítók, & Profilok, majd a (+) lehetőséget.
  3. Új azonosító regisztrálásához válassza az Alkalmazásazonosítók, majd a Folytatás lehetőséget.
  4. Válassza ki a típust, válassza az Alkalmazás, majd a Folytatás lehetőséget.
  5. Alkalmazásazonosító regisztrálása:
    1. Leírás megadása
    2. Adja meg a csomag azonosítóját, például com.contoso.azure-ad-b2c.
    3. A Képességek területen válassza a Bejelentkezés az Apple-szel lehetőséget a képességek listájából.
    4. Jegyezze fel a csoportazonosítót (alkalmazásazonosító-előtagot) ebből a lépésből. Erre később még szüksége lesz.
    5. Válassza a Folytatás , majd a Regisztráció lehetőséget.
  6. A menüben válassza a Tanúsítványok, azonosítók, & Profilok, majd a (+) lehetőséget.
  7. Új azonosító regisztrálásához válassza a Szolgáltatások azonosítóit, majd a Folytatás lehetőséget.
  8. Szolgáltatásazonosító regisztrálásához:
    1. Adjon meg egy leírást. A leírás megjelenik a felhasználó számára a hozzájárulási képernyőn.
    2. Adja meg az azonosítót, például com.consoto.azure-ad-b2c-service. Jegyezze fel a szolgáltatásazonosító azonosítóját . Az azonosító az OpenID Csatlakozás folyamat ügyfélazonosítója.
    3. Válassza a Folytatás, majd a Regisztráció lehetőséget.
  9. Az Azonosítók területen válassza ki a létrehozott azonosítót.
  10. Válassza a Bejelentkezés az Apple-szel lehetőséget, majd a Konfigurálás lehetőséget.
    1. Válassza ki azt az elsődleges alkalmazásazonosítót , amellyel konfigurálni szeretné a bejelentkezést az Apple-szel.
    2. A Tartományok és altartományok területen adja meg a következőt your-tenant-name.b2clogin.com: Cserélje le a bérlő nevét a bérlő nevére. Ha egyéni tartományt használ, írja be a következőt:https://your-domain-name
    3. A Return URL-címekben 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őt:https://your-domain-name/your-tenant-name.onmicrosoft.com/oauth2/authresp Cserélje le your-tenant-name a bérlő nevére és your-domain-name az egyéni tartományára. A Return URL-címnek minden kisbetűsnek kell lennie.
    4. Válassza a Tovább, majd a Kész lehetőséget.
    5. Az előugró ablak bezárásakor válassza a Folytatás, majd a Mentés lehetőséget.

Apple-ügyfélkód létrehozása

  1. Az Apple Developer Portal menüjében válassza a Kulcsok, majd a (+) lehetőséget.
  2. Új kulcs regisztrálása esetén:
    1. Írja be a kulcs nevét.
    2. Válassza a Bejelentkezés az Apple-szel lehetőséget, majd a Konfigurálás lehetőséget.
    3. Az elsődleges alkalmazásazonosítóhoz válassza ki a korábban létrehozott alkalmazást, és válassza a Mentés lehetőséget.
    4. Válassza a Konfigurálás, majd a Regisztráció lehetőséget a kulcsregisztrációs folyamat befejezéséhez. Jegyezze fel a kulcsazonosítót. Ez a kulcs a felhasználói folyamatok konfigurálásakor szükséges.
  3. A kulcs letöltéséhez válassza a Letöltés lehetőséget a kulcsot tartalmazó .p8 fájl letöltéséhez.

Az Apple konfigurálása identitásszolgáltatóként

  1. Jelentkezzen be az Azure Portalra az Azure AD B2C-bérlő globális rendszergazdájaként.
  2. Ha több bérlőhöz is hozzáfér, a felső menüben válassza a Gépház ikont az Azure AD B2C-bérlőre való váltáshoz a Címtárak + előfizetések menüből.
  3. Az Azure-szolgáltatások területen válassza az Azure AD B2C-t. Vagy a keresőmezővel megkeresheti és kiválaszthatja az Azure AD B2C-t.
  4. Válassza az Identitásszolgáltatók lehetőséget, majd válassza az Apple lehetőséget.
  5. A Név mezőbe írja be a bejelentkezést az Apple-lel.
  6. Adja meg az Apple fejlesztői azonosítóját (csapatazonosító).>
  7. Adja meg az Apple szolgáltatásazonosítóját (ügyfél-azonosítóját).>
  8. Adja meg az Apple-kulcs azonosítóját az Apple ügyfélkódjának létrehozása lépésből.
  9. Válassza ki és töltse fel az Apple tanúsítványadatait.
  10. Válassza a Mentés parancsot.

Fontos

  • Az Apple-lel való bejelentkezéshez a Rendszergazda 6 havonta meg kell újítania az ügyfél titkos kódját.
  • Az Apple-ügyfél titkos kódja automatikusan megújul, amikor lejár. Ha manuálisan kell megújítania a titkos kulcsot, nyissa meg az Azure AD B2C-t az Azure Portalon, lépjen az Apple identitásszolgáltatókhoz>, és válassza a Titkos kulcs megújítása lehetőséget.
  • Kövesse az útmutatást a Bejelentkezés az Apple-lel gomb felajánlásához.

Az Apple identitásszolgáltatójának hozzáadása egy felhasználói folyamathoz

Ahhoz, hogy a felhasználók Apple ID azonosítóval jelentkezzenek be, hozzá kell adnia az Apple identitásszolgáltatóját egy felhasználói folyamathoz. Az Apple-lel való bejelentkezés csak a felhasználói folyamatok ajánlott verziójára konfigurálható. Az Apple-identitásszolgáltató hozzáadása egy felhasználói folyamathoz:

  1. Az Azure AD B2C-bérlőben válassza a Felhasználói folyamatok lehetőséget.
  2. Válassza ki azt a felhasználói folyamatot, amelyhez hozzá szeretné adni az Apple identitásszolgáltatót.
  3. A Közösségi identitásszolgáltatók területen válassza az Apple lehetőséget.
  4. Válassza a Mentés parancsot.
  5. A szabályzat teszteléséhez válassza a Felhasználói folyamat futtatása lehetőséget.
  6. Alkalmazás esetén válassza ki a korábban regisztrált testapp1 nevű webalkalmazást. A Válasz URL-címnek meg kell jelennie https://jwt.ms.
  7. Válassza a Felhasználói folyamat futtatása gombot.
  8. A regisztrációs vagy bejelentkezési oldalon válassza az Apple-t az Apple ID-val való bejelentkezéshez.

Ha a bejelentkezési folyamat sikeres, a rendszer átirányítja a böngészőt, amely megjeleníti az Azure AD B2C által visszaadott https://jwt.msjogkivonat tartalmát.

Az ügyfél titkos kódjának aláírása

Használja a korábban letöltött .p8 fájlt az ügyfél titkos kódjának JWT-jogkivonatba való aláírásához. Számos kódtár képes létrehozni és aláírni a JWT-t. Használja a jogkivonatot létrehozó Azure-függvényt.

  1. Azure-függvény létrehozása.

  2. A Fejlesztőeszközök területen válassza a Code + Test lehetőséget.

  3. Másolja ki a run.csx fájl tartalmát, és illessze be a szerkesztőbe.

  4. Válassza a Mentés parancsot.

  5. HTTP-kérést POST kezdeményez, és adja meg a következő adatokat:

    • appleTeamId: Az Apple fejlesztői csapatazonosítója
    • appleServiceId: Az Apple szolgáltatásazonosítója (ügyfél-azonosító)
    • appleKeyId: A JWT-fejlécben tárolt 10 jegyű kulcsazonosító (amelyet az Apple igényel)
    • p8key: A PEM formátumkulcs. Ehhez nyissa meg a .p8 fájlt egy szövegszerkesztőben, és másoljon mindent sortörések között -----BEGIN PRIVATE KEY----- és -----END PRIVATE KEY----- anélkül.

Az alábbi json egy példa az Azure-függvény hívására:

{
    "appleTeamId": "ABC123DEFG",
    "appleServiceId": "com.yourcompany.app1",
    "appleKeyId": "URKEYID001",
    "p8key": "MIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQg+s07NiAcuGEu8rxsJBG7ttupF6FRe3bXdHxEipuyK82gCgYIKoZIzj0DAQehRANCAAQnR1W/KbbaihTQayXH3tuAXA8Aei7u7Ij5OdRy6clOgBeRBPy1miObKYVx3ki1msjjG2uGqRbrc1LvjLHINWRD"
}

Az Azure-függvény egy megfelelően formázott és aláírt ügyféltitkos JWT-vel válaszol egy válaszban, például:

{
    "token": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJjb20ueW91cmNvbXBhbnkuYXBwMSIsIm5iZiI6MTU2MDI2OTY3NSwiZXhwIjoxNTYwMzU2MDc1LCJpc3MiOiJBQkMxMjNERUZHIiwiYXVkIjoiaHR0cHM6Ly9hcHBsZWlkLmFwcGxlLmNvbSJ9.Dt9qA9NmJ_mk6tOqbsuTmfBrQLFqc9BnSVKR6A-bf9TcTft2XmhWaVODr7Q9w1PP3QOYShFXAnNql5OdNebB4g"
}

Szabályzatkulcs létrehozása

Az Azure AD B2C-bérlőben korábban rögzített ügyfélkulcsot kell tárolnia.

  1. Jelentkezzen be az Azure Portalra.
  2. Ha több bérlőhöz is hozzáfér, a felső menüben válassza a Gépház ikont az Azure AD B2C-bérlőre való váltáshoz a Címtárak + előfizetések menüből.
  3. Az Azure-szolgáltatások területen válassza az Azure AD B2C-t. Vagy a keresőmezővel megkeresheti és kiválaszthatja az Azure AD B2C-t.
  4. Az Áttekintés lapon válassza az Identity Experience Framework lehetőséget.
  5. Válassza a Házirendkulcsok lehetőséget, majd válassza a Hozzáadás lehetőséget.
  6. A Beállítások beállításnál válassza a Manuális lehetőséget.
  7. Adja meg a szabályzatkulcs nevét. Például: "AppleSecret". A "B2C_1A_" előtag automatikusan hozzáadódik a kulcs nevéhez.
  8. A Titkos kód mezőben adja meg az Azure-függvény (JWT-jogkivonat) által visszaadott jogkivonat értékét.
  9. Kulcshasználat esetén válassza az Aláírás lehetőséget.
  10. Select Create.

Fontos

  • Az Apple-lel való bejelentkezéshez a Rendszergazda 6 havonta meg kell újítania az ügyfél titkos kódját.
  • Ha lejár, manuálisan kell megújítania az Apple-ügyfél titkos kódját, és az új értéket a szabályzatkulcsban kell tárolnia.
  • Javasoljuk, hogy 6 hónapon belül állítson be saját emlékeztetőt egy új titkos ügyfélkód létrehozásához.
  • Kövesse az útmutatást a Bejelentkezés az Apple-lel gomb felajánlásához.

Az Apple konfigurálása identitásszolgáltatóként

Ahhoz, hogy a felhasználók Apple ID-val jelentkezzenek be, meg kell határoznia a fiókot jogcímszolgáltatóként, amellyel az Azure AD B2C egy végponton keresztül tud kommunikálni. A végpont az Azure AD B2C által egy adott felhasználó hitelesítésének ellenőrzésére használt jogcímeket biztosít.

Az Apple ID-t jogcímszolgáltatóként úgy határozhatja meg, hogy hozzáadja azt a szabályzat bővítményfájljában lévő ClaimsProviders elemhez.

  1. Nyissa meg az TrustFrameworkExtensions.xml fájlt.

  2. Keresse meg a ClaimsProviders elemet. Ha nem létezik, adja hozzá a gyökérelemhez.

  3. Adjon hozzá egy új ClaimsProvidert az alábbiak szerint:

    <ClaimsProvider>
      <Domain>apple.com</Domain>
      <DisplayName>Apple</DisplayName>
      <TechnicalProfiles>
        <TechnicalProfile Id="Apple-OIDC">
          <DisplayName>Sign in with Apple</DisplayName>
          <Protocol Name="OpenIdConnect" />
          <Metadata>
            <Item Key="ProviderName">apple</Item>
            <Item Key="authorization_endpoint">https://appleid.apple.com/auth/authorize</Item>
            <Item Key="AccessTokenEndpoint">https://appleid.apple.com/auth/token</Item>
            <Item Key="JWKS">https://appleid.apple.com/auth/keys</Item>
            <Item Key="issuer">https://appleid.apple.com</Item>
            <Item Key="scope">name email openid</Item>
            <Item Key="HttpBinding">POST</Item>
            <Item Key="response_types">code</Item>
            <Item Key="external_user_identity_claim_id">sub</Item>
            <Item Key="response_mode">form_post</Item>
            <Item Key="ReadBodyClaimsOnIdpRedirect">user.name.firstName user.name.lastName user.email</Item>
            <Item Key="client_id">You Apple ID</Item>
            <Item Key="UsePolicyInRedirectUri">false</Item>
          </Metadata>
          <CryptographicKeys>
            <Key Id="client_secret" StorageReferenceId="B2C_1A_AppleSecret"/>
          </CryptographicKeys>
          <OutputClaims>
            <OutputClaim ClaimTypeReferenceId="issuerUserId" PartnerClaimType="sub" />
            <OutputClaim ClaimTypeReferenceId="identityProvider" DefaultValue="https://appleid.apple.com" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="authenticationSource" DefaultValue="socialIdpAuthentication" AlwaysUseDefaultValue="true" />
            <OutputClaim ClaimTypeReferenceId="givenName" PartnerClaimType="user.name.firstName"/>
            <OutputClaim ClaimTypeReferenceId="surname" PartnerClaimType="user.name.lastName"/>
            <OutputClaim ClaimTypeReferenceId="email" />
          </OutputClaims>
          <OutputClaimsTransformations>
            <OutputClaimsTransformation ReferenceId="CreateRandomUPNUserName"/>
            <OutputClaimsTransformation ReferenceId="CreateUserPrincipalName"/>
            <OutputClaimsTransformation ReferenceId="CreateAlternativeSecurityId"/>
            <OutputClaimsTransformation ReferenceId="CreateSubjectClaimFromAlternativeSecurityId"/>
          </OutputClaimsTransformations>
          <UseTechnicalProfileForSessionManagement ReferenceId="SM-SocialLogin" />
        </TechnicalProfile>
      </TechnicalProfiles>
    </ClaimsProvider>
    
  4. Állítsa client_id a szolgáltatásazonosítóra. For example, com.consoto.azure-ad-b2c-service.

  5. 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 folyamatokkal, hozzon létre egy meglévő sablonfelhasználói folyamat másolatát, ellenkező esetben folytassa a következő lépéssel.

  1. Nyissa meg az TrustFrameworkBase.xml fájlt a kezdőcsomagból.
  2. Keresse meg és másolja ki a UserJourney elem teljes tartalmát, amely tartalmazza Id="SignUpOrSignIn"a elemet.
  3. Nyissa meg az TrustFrameworkExtensions.xml fájlt , és keresse meg a UserJourneys elemet. Ha az elem nem létezik, adjon hozzá egyet.
  4. Illessze be a UserJourney elem gyermekként másolt UserJourney elem teljes tartalmát.
  5. Nevezze át a felhasználói folyamat azonosítóját. For example, Id="CustomSignUpSignIn".

Identitásszolgáltató hozzáadása egy felhasználói folyamathoz

Most, hogy már rendelkezik felhasználói folyamatokkal, adja hozzá az új identitásszolgáltatót a felhasználói folyamathoz. Először hozzáad egy bejelentkezési gombot, majd csatolja a gombot egy művelethez. A művelet a korábban létrehozott technikai profil.

  1. Keresse meg a vezénylési lépés azon elemét, amely tartalmazza Type="CombinedSignInAndSignUp"vagy Type="ClaimsProviderSelection" a felhasználói folyamat során. Á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 szabályozza a felhasználónak megjelenített bejelentkezési gombok sorrendjét. Adjon hozzá egy ClaimsProviderSelection XML-elemet. Állítsa be a TargetClaimsExchangeId értékét egy rövid névre.

  2. A következő vezénylési lépésben adjon hozzá egy ClaimsExchange elemet. Állítsa az azonosítót a cél jogcí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.

Az alábbi 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="AppleExchange" />
  </ClaimsProviderSelections>
  ...
</OrchestrationStep>

<OrchestrationStep Order="2" Type="ClaimsExchange">
  ...
  <ClaimsExchanges>
    <ClaimsExchange Id="AppleExchange" TechnicalProfileReferenceId="Apple-OIDC" />
  </ClaimsExchanges>
</OrchestrationStep>

A függő entitás házirendjének konfigurálása

A függő entitás házirendje( például SignUpSignIn.xml) meghatározza az Azure AD B2C által végrehajtandó felhasználói folyamatot. Keresse meg a DefaultUserJourney elemet a függő entitáson belül. Frissítse a referenciaazonosítót a felhasználói útazonosítónak megfelelően, amelyben hozzáadta az identitásszolgáltatót.

A következő példában a CustomSignUpSignIn felhasználói folyamat referenciaazonosítója a következőre CustomSignUpSignInvan állítva:

<RelyingParty>
  <DefaultUserJourney ReferenceId="CustomSignUpSignIn" />
  ...
</RelyingParty>

Az egyéni szabályzat feltöltése

  1. Jelentkezzen be az Azure Portalra.
  2. Válassza a Címtár + Előfizetés ikont a portál eszköztárán, majd válassza ki az Azure AD B2C-bérlőt tartalmazó könyvtárat.
  3. Az Azure Portalon keresse meg és válassza ki az Azure AD B2C-t.
  4. A Szabályzatok területen válassza az Identity Experience Framework lehetőséget.
  5. 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ául SignUpSignIn.xml.

Egyéni szabályzat tesztelése

  1. Válassza ki például B2C_1A_signup_signina függő entitás szabályzatát.
  2. 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.
  3. Válassza a Futtatás most gombot.
  4. A regisztrációs vagy bejelentkezési oldalon válassza az Apple-t az Apple ID-val való bejelentkezéshez.

Ha a bejelentkezési folyamat sikeres, a rendszer átirányítja a böngészőt, amely megjeleníti az Azure AD B2C által visszaadott https://jwt.msjogkivonat tartalmát.

A felület testreszabása

Kövesse az Útmutatást, hogyan ajánlhat be bejelentkezést az Apple-lel. Az Apple számos Apple-bejelentkezés gombot biztosít, amellyel lehetővé teheti a felhasználók számára a fiók beállítását és a bejelentkezést. Szükség esetén hozzon létre egy egyéni gombot, amely felajánlja a bejelentkezést az Apple-lel. Megtudhatja, hogyan jeleníthet meg bejelentkezést az Apple gombjával.

Az Apple felhasználói felületére vonatkozó irányelveknek megfelelően: