Migrace uživatelů do Azure AD B2C

Migrace z jiného zprostředkovatele identity do Azure Active Directory B2C (Azure AD B2C) může také vyžadovat migraci existujících uživatelských účtů. Zde jsou popsány dvě metody migrace, před migrací a bezproblémová migrace. U obou přístupů musíte napsat aplikaci nebo skript, který používá Microsoft Graph API k vytvoření uživatelských účtů v Azure AD B2C.

V tomto videu se dozvíte o strategiích migrace uživatelů Azure AD B2C a postupu, který je potřeba zvážit.

Poznámka

Před zahájením migrace se ujistěte, že nevyužitá kvóta vašeho Azure AD tenanta B2C může pojmout všechny uživatele, které očekáváte migrovat. Zjistěte, jak získat využití tenanta. Pokud potřebujete zvýšit maximální kvótu tenanta, kontaktujte podpora Microsoftu.

Před migrací

V toku před migrací provede vaše aplikace pro migraci pro každý uživatelský účet tyto kroky:

  1. Přečtěte si uživatelský účet od starého zprostředkovatele identity včetně jeho aktuálních přihlašovacích údajů (uživatelské jméno a heslo).
  2. Ve svém adresáři Azure AD B2C vytvořte odpovídající účet s aktuálními přihlašovacími údaji.

Tok před migrací použijte v některé z těchto dvou situací:

  • Máte přístup k přihlašovacím údajům uživatele ve formátu prostého textu (jeho uživatelské jméno a heslo).
  • Přihlašovací údaje jsou zašifrované, ale můžete je dešifrovat.

Informace o programovém vytváření uživatelských účtů najdete v tématu Správa uživatelských účtů Azure AD B2C pomocí Microsoft Graphu.

Bezproblémová migrace

Pokud hesla ve starém zprostředkovateli identity nejsou přístupná, použijte bezproblémový postup migrace. Příklad:

  • Heslo se ukládá v jednosměrně šifrované podobě, například s hashovací funkcí.
  • Heslo ukládá starší zprostředkovatel identity způsobem, ke kterému nemáte přístup. Například když zprostředkovatel identity ověří přihlašovací údaje voláním webové služby.

Bezproblémový tok migrace stále vyžaduje před migrací uživatelských účtů, ale pak použije vlastní zásadu k dotazování rozhraní REST API (které vytvoříte) k nastavení hesla každého uživatele při prvním přihlášení.

Bezproblémový tok migrace se skládá ze dvou fází: před migrací a nastavení přihlašovacích údajů.

Fáze 1: Před migrací

  1. Vaše aplikace pro migraci načte uživatelské účty od starého zprostředkovatele identity.
  2. Aplikace pro migraci vytvoří v adresáři Azure AD B2C odpovídající uživatelské účty, ale nastaví náhodná hesla, která vygenerujete.

Fáze 2: Nastavení přihlašovacích údajů

Po dokončení před migrací účtů vaše vlastní zásady a rozhraní REST API pak při přihlášení uživatele proveďte následující kroky:

  1. Přečtěte si uživatelský účet Azure AD B2C odpovídající zadané e-mailové adrese.
  2. Zkontrolujte, jestli je účet označený příznakem pro migraci, a to vyhodnocením logického atributu rozšíření.
    • Pokud atribut rozšíření vrátí True, zavolejte rozhraní REST API a ověřte heslo vůči staršímu zprostředkovateli identity.
      • Pokud rozhraní REST API zjistí, že heslo je nesprávné, vraťte uživateli popisnou chybu.
      • Pokud rozhraní REST API zjistí, že je heslo správné, zapište heslo do účtu Azure AD B2C a změňte logický atribut rozšíření na False.
    • Pokud logický atribut rozšíření vrátí Falsehodnotu , pokračujte v procesu přihlášení jako obvykle.

Ukázkové vlastní zásady a rozhraní REST API najdete v ukázce bezproblémové migrace uživatelů na GitHubu.

Vývojový diagram bezproblémové migrace k migraci uživatelů

Zabezpečení

Bezproblémový přístup k migraci používá vlastní rozhraní REST API k ověření přihlašovacích údajů uživatele u starší verze zprostředkovatele identity.

Rozhraní REST API musíte chránit před útoky hrubou silou. Útočník může odeslat několik hesel v naději, že nakonec uhodne přihlašovací údaje uživatele. Pokud chcete takové útoky porazit, zastavte obsluhu požadavků do rozhraní REST API, když počet pokusů o přihlášení překročí určitou prahovou hodnotu. Zabezpečte také komunikaci mezi Azure AD B2C a vaším rozhraním REST API. Informace o zabezpečení rozhraní RESTful API pro produkční prostředí najdete v tématu Zabezpečení rozhraní RESTful API.

Atributy uživatele

Do adresáře Azure AD B2C by se neměly migrovat všechny informace ve starší verzi zprostředkovatele identity. Před migrací určete vhodnou sadu uživatelských atributů, které se mají uložit v Azure AD B2C.

  • Do úložiště v Azure AD B2C:
    • Uživatelské jméno, heslo, e-mailové adresy, telefonní čísla, členské čísla/identifikátory.
    • Značky souhlasu pro zásady ochrany osobních údajů a licenční smlouvy s koncovým uživatelem
  • Neuchovávejte do Azure AD B2C:
    • Citlivá data, jako jsou čísla platebních karet, čísla sociálního pojištění (SSN), lékařské záznamy nebo jiná data regulovaná vládními nebo průmyslovými orgány pro dodržování předpisů.
    • Marketingové nebo komunikační předvolby, chování uživatelů a přehledy.

Vyčištění adresáře

Před zahájením procesu migrace využijte příležitost vyčistit adresář.

  • Určete sadu atributů uživatele, které se mají uložit do Azure AD B2C, a migrujte jenom to, co potřebujete. V případě potřeby můžete vytvořit vlastní atributy pro ukládání více dat o uživateli.
  • Pokud migrujete z prostředí s více zdroji ověřování (například každá aplikace má svůj vlastní uživatelský adresář), migrujte na jednotný účet v Azure AD B2C.
  • Pokud má více aplikací různá uživatelská jména, můžete je všechna uložit do uživatelského účtu Azure AD B2C pomocí kolekce identit. Pokud chcete zadat heslo, nechejte ho uživateli vybrat a nastavit ho v adresáři. Například při bezproblémové migraci by se v účtu Azure AD B2C mělo ukládat jenom zvolené heslo.
  • Odeberte nepoužívané uživatelské účty nebo nemigrujte zastaralé účty.

Zásady hesel

Pokud účty, které migrujete, mají slabší sílu hesla než silná síla hesla vynucená Azure AD B2C, můžete požadavek na silné heslo zakázat. Další informace najdete v tématu Vlastnost zásad hesel.

Další kroky

Úložiště azure-ad-b2c/user-migration na GitHubu obsahuje příklad bezproblémové migrace vlastních zásad a ukázku kódu rozhraní REST API:

Ukázka kódu pro bezproblémovou migraci uživatelů a vlastní zásady a rozhraní REST API