Migrowanie użytkowników do usługi Azure AD B2C

Migracja z innego dostawcy tożsamości do usługi Azure Active Directory B2C (Azure AD B2C) może również wymagać migracji istniejących kont użytkowników. W tym miejscu omówiono dwie metody migracji przed migracją i bezproblemową migracją. W przypadku podejścia wymagane jest napisanie aplikacji lub skryptu używającego interfejs Graph API Microsoft do tworzenia kont użytkowników w usłudze Azure AD B2C.

Obejrzyj ten film wideo, aby dowiedzieć się więcej o strategiach migracji użytkowników Azure AD B2C i krokach, które należy wziąć pod uwagę.

Uwaga

Przed rozpoczęciem migracji upewnij się, że nieużywany limit przydziału dzierżawy usługi Azure AD B2C może pomieścić wszystkich użytkowników, których oczekujesz na migrację. Dowiedz się, jak uzyskać użycie dzierżawy. Jeśli musisz zwiększyć limit przydziału dzierżawy, skontaktuj się z pomoc techniczna firmy Microsoft.

Migracja wstępna

W przepływie przed migracją aplikacja migracji wykonuje następujące kroki dla każdego konta użytkownika:

  1. Przeczytaj konto użytkownika od starego dostawcy tożsamości, w tym jego bieżące poświadczenia (nazwa użytkownika i hasło).
  2. Utwórz odpowiednie konto w katalogu Azure AD B2C przy użyciu bieżących poświadczeń.

Użyj przepływu przed migracją w jednej z tych dwóch sytuacji:

  • Masz dostęp do poświadczeń zwykłego tekstu użytkownika (nazwy użytkownika i hasła).
  • Poświadczenia są szyfrowane, ale można je odszyfrować.

Aby uzyskać informacje o programowym tworzeniu kont użytkowników, zobacz Manage Azure AD B2C user accounts with Microsoft Graph (Zarządzanie kontami użytkowników usługi Azure AD B2C przy użyciu programu Microsoft Graph).

Bezproblemowa migracja

Użyj bezproblemowego przepływu migracji, jeśli hasła zwykłego tekstu w starym dostawcy tożsamości nie są dostępne. Może być tak na przykład, gdy:

  • Hasło jest przechowywane w formacie szyfrowanym jednokierunkowym, takim jak funkcja skrótu.
  • Hasło jest przechowywane przez starszego dostawcę tożsamości w sposób, do którego nie można uzyskać dostępu. Na przykład gdy dostawca tożsamości weryfikuje poświadczenia, wywołując usługę internetową.

Bezproblemowy przepływ migracji nadal wymaga wstępnej migracji kont użytkowników, ale następnie używa niestandardowych zasad do wykonywania zapytań względem interfejsu API REST (utworzonego) w celu ustawienia hasła poszczególnych użytkowników podczas pierwszego logowania.

Bezproblemowy przepływ migracji składa się z dwóch faz: migracji wstępnej i ustawiania poświadczeń.

Faza 1. Przed migracją

  1. Aplikacja migracji odczytuje konta użytkowników ze starego dostawcy tożsamości.
  2. Aplikacja migracji tworzy odpowiednie konta użytkowników w katalogu Azure AD B2C, ale ustaw wygenerowane losowe hasła.

Faza 2. Ustawianie poświadczeń

Po zakończeniu wstępnej migracji kont zasady niestandardowe i interfejs API REST wykonaj następujące czynności po zalogowaniu się użytkownika:

  1. Przeczytaj konto użytkownika usługi Azure AD B2C odpowiadające wprowadzonemu adresowi e-mail.
  2. Sprawdź, czy konto jest oflagowane do migracji, oceniając atrybut rozszerzenia logicznego.
    • Jeśli atrybut rozszerzenia zwróci Truewartość , wywołaj interfejs API REST, aby zweryfikować hasło względem starszego dostawcy tożsamości.
      • Jeśli interfejs API REST określa, że hasło jest niepoprawne, zwróć przyjazny błąd do użytkownika.
      • Jeśli interfejs API REST określa, że hasło jest poprawne, zapisz hasło na koncie usługi Azure AD B2C i zmień atrybut rozszerzenia logicznego na False.
    • Jeśli atrybut rozszerzenia logicznego zwraca Falsewartość , kontynuuj proces logowania w normalny sposób.

Aby zapoznać się z przykładowymi zasadami niestandardowymi i interfejsem API REST, zobacz przykład bezproblemowej migracji użytkowników w witrynie GitHub.

Diagram schematu blokowego bezproblemowej migracji do migracji użytkowników

Zabezpieczenia

Bezproblemowe podejście do migracji używa własnego niestandardowego interfejsu API REST do weryfikowania poświadczeń użytkownika względem starszego dostawcy tożsamości.

Musisz chronić interfejs API REST przed atakami siłowymi. Osoba atakująca może przesłać kilka haseł w nadziei, że ostatecznie odgadnie poświadczeń użytkownika. Aby pomóc w pokonaniu takich ataków, zatrzymaj obsługę żądań do interfejsu API REST, gdy liczba prób logowania przekroczy określony próg. Ponadto należy zabezpieczyć komunikację między usługą Azure AD B2C i interfejsem API REST. Aby dowiedzieć się, jak zabezpieczyć interfejsy API RESTful dla środowiska produkcyjnego, zobacz Bezpieczny interfejs API RESTful.

Atrybuty użytkownika

Nie wszystkie informacje w starszym dostawcy tożsamości powinny być migrowane do katalogu Azure AD B2C. Zidentyfikuj odpowiedni zestaw atrybutów użytkownika do przechowywania w usłudze Azure AD B2C przed migracją.

  • Magazyn DO w usłudze Azure AD B2C:
    • Nazwa użytkownika, hasło, adresy e-mail, numery telefonów, numery członkostwa/identyfikatory.
    • Znaczniki zgody dotyczące zasad ochrony prywatności i umów licencyjnych użytkownika końcowego.
  • NIE przechowuj w usłudze Azure AD B2C:
    • Poufne dane, takie jak numery kart kredytowych, numery ubezpieczenia społecznego (SSN), rejestry medyczne lub inne dane regulowane przez organy rządowe lub branżowe.
    • Preferencje marketingowe lub komunikacyjne, zachowania użytkowników i szczegółowe informacje.

Oczyszczanie katalogu

Przed rozpoczęciem procesu migracji skorzystaj z okazji, aby wyczyścić katalog.

  • Zidentyfikuj zestaw atrybutów użytkownika, które mają być przechowywane w usłudze Azure AD B2C, i zmigruj tylko potrzebne elementy. W razie potrzeby możesz utworzyć atrybuty niestandardowe , aby przechowywać więcej danych o użytkowniku.
  • Jeśli migrujesz ze środowiska z wieloma źródłami uwierzytelniania (na przykład każda aplikacja ma własny katalog użytkowników), przeprowadź migrację do ujednoliconego konta w usłudze Azure AD B2C.
  • Jeśli wiele aplikacji ma różne nazwy użytkownika, możesz przechowywać wszystkie z nich na koncie użytkownika usługi Azure AD B2C przy użyciu kolekcji tożsamości. Informacje o haśle pozwalają użytkownikowi wybrać jedno i ustawić je w katalogu. Na przykład w przypadku bezproblemowej migracji tylko wybrane hasło powinno być przechowywane na koncie usługi Azure AD B2C.
  • Usuń nieużywane konta użytkowników lub nie migruj nieaktualnych kont.

Zasady haseł

Jeśli migrowane konta mają słabszą siłę hasła niż silna siła hasła wymuszana przez usługę Azure AD B2C, możesz wyłączyć silne wymaganie dotyczące hasła. Aby uzyskać więcej informacji, zobacz Właściwość zasad haseł.

Następne kroki

Repozytorium azure-ad-b2c/user-migration w usłudze GitHub zawiera przykładowe niestandardowe zasady migracji i przykład kodu interfejsu API REST:

Przykładowy kod interfejsu API REST bezproblemowej & migracji użytkowników