Felhasználók migrálása Azure AD B2CreMigrate users to Azure AD B2C

A másik identitás-szolgáltatóról Azure Active Directory B2C (Azure AD B2C) való Migrálás a meglévő felhasználói fiókok áttelepítését is szükségessé teheti.Migrating from another identity provider to Azure Active Directory B2C (Azure AD B2C) might also require migrating existing user accounts. Két áttelepítési módszer van megtárgyalva, az áttelepítés előtti és zökkenőmentes áttelepítés.Two migration methods are discussed here, pre migration and seamless migration. Mindkét módszer esetében olyan alkalmazást vagy parancsfájlt kell írnia, amely a Microsoft Graph API -t használja a felhasználói fiókok létrehozásához Azure ad B2Cban.With either approach, you're required to write an application or script that uses the Microsoft Graph API to create user accounts in Azure AD B2C.

Áttelepítés előttiPre migration

Az áttelepítés előtti folyamat során az áttelepítési alkalmazás végrehajtja ezeket a lépéseket minden felhasználói fiókhoz:In the pre migration flow, your migration application performs these steps for each user account:

  1. Olvassa el a felhasználói fiókot a régi identitás-szolgáltatótól, beleértve az aktuális hitelesítő adatait (Felhasználónév és jelszó).Read the user account from the old identity provider, including its current credentials (username and password).
  2. Hozzon létre egy megfelelő fiókot a Azure AD B2C címtárban az aktuális hitelesítő adatokkal.Create a corresponding account in your Azure AD B2C directory with the current credentials.

Az áttelepítés előtti folyamat mindkét esetben a következő két helyzetben használható:Use the pre migration flow in either of these two situations:

  • Hozzáférése van a felhasználó egyszerű szöveges hitelesítő adataihoz (a felhasználónevet és a jelszót).You have access to a user's plaintext credentials (their username and password).
  • A hitelesítő adatok titkosítva vannak, de visszafejtheti őket.The credentials are encrypted, but you can decrypt them.

További információ a felhasználói fiókok programozott létrehozásáról: Azure ad B2C felhasználói fiókok kezelése Microsoft Graphhasználatával.For information about programmatically creating user accounts, see Manage Azure AD B2C user accounts with Microsoft Graph.

Zökkenőmentes áttelepítésSeamless migration

Ha a régi identitás-szolgáltató szöveges jelszavai nem érhetők el, használja a zökkenőmentes áttelepítési folyamatot.Use the seamless migration flow if plaintext passwords in the old identity provider are not accessible. Például:For example, when:

  • A jelszót egy egyirányú titkosított formátumban, például egy kivonatoló függvénnyel tárolja a rendszer.The password is stored in a one-way encrypted format, such as with a hash function.
  • A jelszót a régi identitás-szolgáltató tárolja oly módon, hogy nem férhet hozzá.The password is stored by the legacy identity provider in a way that you can't access. Ha például az identitás-szolgáltató egy webszolgáltatás meghívásával érvényesíti a hitelesítő adatokat.For example, when the identity provider validates credentials by calling a web service.

A zökkenőmentes áttelepítési folyamat továbbra is a felhasználói fiókok előzetes áttelepítését igényli, azonban egy Egyéni szabályzattal kérdez le egy REST API (amelyet Ön hozott létre) az első bejelentkezéskor az egyes felhasználók jelszavának megadásához.The seamless migration flow still requires pre migration of user accounts, but then uses a custom policy to query a REST API (which you create) to set each users' password at first sign-in.

A zökkenőmentes áttelepítési folyamatnak két fázisa van: az áttelepítés előtti és a hitelesítő adatok beállítása.The seamless migration flow thus has two phases: pre migration and set credentials.

1. fázis: áttelepítés előttiPhase 1: Pre migration

  1. Az áttelepítési alkalmazás beolvassa a felhasználói fiókokat a régi identitás-szolgáltatótól.Your migration application reads the user accounts from the old identity provider.
  2. Az áttelepítési alkalmazás a megfelelő felhasználói fiókokat hozza létre a Azure AD B2C könyvtárban, de nem állítja be a jelszavakat.The migration application creates corresponding user accounts in your Azure AD B2C directory, but does not set passwords.

2. fázis: hitelesítő adatok beállításaPhase 2: Set credentials

A fiókok előzetes áttelepítése után az egyéni házirend és a REST API akkor hajtsa végre a következőket, amikor egy felhasználó bejelentkezik:After pre migration of the accounts is complete, your custom policy and REST API then perform the following when a user signs in:

  1. Olvassa el a megadott e-mail-címre vonatkozó Azure AD B2C felhasználói fiókot.Read the Azure AD B2C user account corresponding to the email address entered.
  2. A logikai bővítmény attribútum kiértékelésével győződjön meg arról, hogy a fiók az áttelepítésre van-e megjelölve.Check whether the account is flagged for migration by evaluating a boolean extension attribute.
    • Ha a bővítmény attribútum visszatér True , hívja meg a REST APIt, hogy érvényesítse a jelszót az örökölt identitás-szolgáltatón.If the extension attribute returns True, call your REST API to validate the password against the legacy identity provider.
      • Ha a REST API határozza meg, hogy a jelszó helytelen, egy felhasználóbarát hibát ad vissza a felhasználónak.If the REST API determines the password is incorrect, return a friendly error to the user.
      • Ha a REST API határozza meg a jelszót, írja be a jelszót a Azure AD B2C-fiókba, és módosítsa a logikai bővítmény attribútumát a következőre: False .If the REST API determines the password is correct, write the password to the Azure AD B2C account and change the boolean extension attribute to False.
    • Ha a logikai bővítmény attribútuma visszatér False , folytassa a bejelentkezési folyamatot a szokásos módon.If the boolean extension attribute returns False, continue the sign-in process as normal.

Az egyéni szabályzatok és REST APIek megjelenítéséhez tekintse meg a zökkenőmentes felhasználói áttelepítési mintát a githubon.To see an example custom policy and REST API, see the seamless user migration sample on GitHub.

A felhasználók áttelepítésének zökkenőmentes áttelepítési módszerének folyamatábrájaFlowchart diagram of the seamless migration approach to user migration
Ábra: zökkenőmentes áttelepítési folyamatDiagram: Seamless migration flow

Ajánlott eljárásokBest practices

BiztonságSecurity

A zökkenőmentes áttelepítési módszer a saját egyéni REST API használatával érvényesíti a felhasználó hitelesítő adatait az örökölt identitás-szolgáltatón.The seamless migration approach uses your own custom REST API to validate a user's credentials against the legacy identity provider.

Meg kell védenie REST API a találgatásos támadásokkal szemben.You must protect your REST API against brute-force attacks. A támadók több jelszót is elküldhetnek abban a reményben, hogy végül kitalálják a felhasználó hitelesítő adatait.An attacker can submit several passwords in the hope of eventually guessing a user's credentials. Az ilyen támadások legyőzéséhez állítsa le a kérések kézbesítését a REST API, ha a bejelentkezési kísérletek száma egy bizonyos küszöbértéket eredményez.To help defeat such attacks, stop serving requests to your REST API when the number of sign-in attempts passes a certain threshold. Emellett gondoskodjon Azure AD B2C és az REST API közötti kommunikáció védelméről.Also, secure the communication between Azure AD B2C and your REST API. A REST API-k éles környezetben történő biztonságossá tételéhez lásd: biztonságos REST API.To learn how to secure your RESTful APIs for production, see Secure RESTful API.

Felhasználói attribútumokUser attributes

A régi identitás-szolgáltató összes adatát át kell telepíteni a Azure AD B2C könyvtárba.Not all information in the legacy identity provider should be migrated to your Azure AD B2C directory. Az áttelepítés előtt azonosítsa a Azure AD B2C tárolandó felhasználói attribútumok megfelelő készletét.Identify the appropriate set of user attributes to store in Azure AD B2C before migrating.

  • Tároló Azure ad B2CDO store in Azure AD B2C
    • Felhasználónév, jelszó, e-mail-cím, telefonszámok, tagsági számok/azonosítók.Username, password, email addresses, phone numbers, membership numbers/identifiers.
    • Az adatvédelmi szabályzat és a Végfelhasználói licencszerződések megjelölése.Consent markers for privacy policy and end-user license agreements.
  • Ne tárolja a Azure ad B2CDO NOT store in Azure AD B2C
    • Bizalmas adatok, például hitelkártyaszám, társadalombiztosítási számok (SSN), orvosi nyilvántartások vagy egyéb, kormányzati vagy iparági megfelelőségi szervek által szabályozott adatok.Sensitive data like credit card numbers, social security numbers (SSN), medical records, or other data regulated by government or industry compliance bodies.
    • Marketing-vagy kommunikációs beállítások, felhasználói viselkedés és bepillantást nyerhet.Marketing or communication preferences, user behaviors, and insights.

Címtár törléseDirectory clean-up

Az áttelepítési folyamat megkezdése előtt végezze el a könyvtár törlésének lehetőségét.Before you start the migration process, take the opportunity to clean up your directory.

  • Azonosítsa a Azure AD B2C tárolandó felhasználói attribútumok készletét, és csak azt telepítse át, amire szüksége van.Identify the set of user attributes to be stored in Azure AD B2C, and migrate only what you need. Ha szükséges, létrehozhat Egyéni attribútumokat a felhasználóval kapcsolatos további információk tárolásához.If necessary, you can create custom attributes to store more data about a user.
  • Ha több hitelesítési forrásból származó környezetről végez áttelepítést (például az egyes alkalmazások saját felhasználói címtárral rendelkeznek), telepítse át a Azure AD B2C egyesített fiókjába.If you're migrating from an environment with multiple authentication sources (for example, each application has its own user directory), migrate to a unified account in Azure AD B2C.
  • Ha több alkalmazásnak eltérő felhasználóneve van, akkor az identitások gyűjtemény használatával egy Azure AD B2C felhasználói fiókban tárolhatók.If multiple applications have different usernames, you can store all of them in an Azure AD B2C user account by using the identities collection. A jelszóval kapcsolatban hagyja, hogy a felhasználó válasszon egyet, és állítsa be a könyvtárba.With regard to the password, let the user choose one and set it in the directory. A zökkenőmentes áttelepítéssel például csak a kiválasztott jelszót kell tárolni a Azure AD B2C fiókban.For example, with the seamless migration, only the chosen password should be stored in the Azure AD B2C account.
  • Távolítsa el a nem használt felhasználói fiókokat az áttelepítés előtt, vagy ne telepítse át az elavult fiókokat.Remove unused user accounts before migration, or do not migrate stale accounts.

JelszóházirendPassword policy

Ha az áttelepíteni kívánt fiókok gyengébb jelszóval rendelkeznek, mint az Azure AD B2C által kényszerített erős jelszó erőssége, letilthatja a jelszó erős követelményét.If the accounts you're migrating have weaker password strength than the strong password strength enforced by Azure AD B2C, you can disable the strong password requirement. További információ: jelszóházirend tulajdonsága.For more information, see Password policy property.

Következő lépésekNext steps

Az Azure-ad-B2C/felhasználó-áttelepítési adattár a githubon egy zökkenőmentes áttelepítési egyéni házirendet tartalmaz, és REST API a kód minta:The azure-ad-b2c/user-migration repository on GitHub contains a seamless migration custom policy example and REST API code sample:

Zökkenőmentes felhasználói áttelepítési egyéni házirend & REST API mintakódSeamless user migration custom policy & REST API code sample