Migrieren von Benutzern zu Azure AD B2C

Bei der Migration von einem anderen Identitätsanbieter zu Azure Active Directory B2C (Azure AD B2C) müssen unter Umständen auch bereits vorhandene Benutzerkonten migriert werden. Hier werden zwei Migrationsmethoden behandelt: Prämigration und nahtlose Migration. Bei beiden Methoden muss eine Anwendung oder ein Skript geschrieben werden, um Benutzerkonten unter Verwendung der Microsoft Graph-API in Azure AD B2C zu erstellen.

Sehen Sie sich dieses Video an, um mehr über Migrationsstrategien für Azure AD B2C-Benutzer und die zu beachtenden Schritte zu erfahren.

Hinweis

Bevor Sie mit der Migration beginnen, müssen Sie sicherstellen, dass das nicht verwendete Kontingent Ihres Azure AD B2C-Mandanten für alle zu migrierenden Benutzer ausreicht. Erfahren Sie, wie Sie die Mandantennutzung ermitteln. Wenn Sie die Kontingentgrenze Ihres Mandanten erhöhen müssen, wenden Sie sich an den Microsoft-Support.

Prämigration

Bei der Prämigration werden von Ihrer Migrationsanwendung für jedes Benutzerkonto folgende Schritte ausgeführt:

  1. Lesen des Benutzerkontos und der aktuellen Anmeldeinformationen (Benutzername und Kennwort) des alten Identitätsanbieters
  2. Erstellen eines entsprechenden Kontos mit den aktuellen Anmeldeinformationen in Ihrem Azure AD B2C-Verzeichnis

Die Prämigration kann in folgenden Situationen verwendet werden:

  • Sie haben Zugriff auf die Klartextanmeldeinformationen (Benutzername und Kennwort) eines Benutzers.
  • Die Anmeldeinformationen sind verschlüsselt, können aber von Ihnen entschlüsselt werden.

Informationen zum programmgesteuerten Erstellen von Benutzerkonten finden Sie unter Verwalten von Azure AD B2C-Benutzerkonten mit Microsoft Graph.

Nahtlose Migration

Verwenden Sie die nahtlose Migration, wenn im alten Identitätsanbieter nicht auf Klartextkennwörter zugegriffen werden kann. Dies kann beispielsweise in folgenden Situationen der Fall sein:

  • Das Kennwort ist in einem unidirektionalen verschlüsselten Format gespeichert (etwa mit einer Hashfunktion).
  • Das Kennwort wurde vom alten Identitätsanbieter so gespeichert, dass Sie keinen Zugriff darauf haben. Dies kann beispielsweise der Fall sein, wenn der Identitätsanbieter Anmeldeinformationen per Webdienstaufruf überprüft.

Bei der nahtlose Migration ist zwar ebenfalls eine Prämigration von Benutzerkonten erforderlich, anschließend wird jedoch eine benutzerdefinierte Richtlinie verwendet, um eine (von Ihnen erstellte) REST-API abzufragen und das Kennwort der einzelnen Benutzer jeweils bei der ersten Anmeldung festzulegen.

Die nahtlose Migration umfasst somit zwei Phasen: Migrationsvorbereitung und Festlegen der Anmeldeinformationen.

Phase 1: Prämigration

  1. Ihre Migrationsanwendung liest die Benutzerkonten des alten Identitätsanbieters.
  2. Die Migrationsanwendung erstellt entsprechende Benutzerkonten in Ihrem Azure AD B2C-Verzeichnis, legt aber zufällige Kennwörter fest, die Sie generieren.

Phase 2: Festlegen von Anmeldeinformationen

Nach Abschluss der Prämigration der Konten werden durch Ihre benutzerdefinierte Richtlinie und durch Ihre REST-API die folgenden Schritte ausgeführt, wenn sich ein Benutzer anmeldet:

  1. Lesen des entsprechenden Azure AD B2C-Benutzerkontos für die eingegebene E-Mail-Adresse
  2. Auswerten eines booleschen Erweiterungsattributs, um zu überprüfen, ob das Konto für die Migration gekennzeichnet ist
    • Gibt das Erweiterungsattribut True zurück, wird Ihre REST-API aufgerufen, um das Kennwort anhand der Angabe des alten Identitätsanbieters zu überprüfen.
      • Ist das Kennwort nicht korrekt, wird eine benutzerfreundliche Fehlermeldung zurückgegeben.
      • Ist das Kennwort korrekt, wird es in das Azure AD B2C-Konto geschrieben, und das boolesche Erweiterungsattribut wird in False geändert.
    • Gibt das boolesche Erweiterungsattribut Falsezurück, wird der Anmeldevorgang normal fortgesetzt.

Ein Beispiel für eine benutzerdefinierte Richtlinie und eine REST-API finden Sie im Beispiel für die nahtlose Benutzermigration auf GitHub.

Flussdiagramm: Nahtlose Benutzermigration

Sicherheit

Bei der nahtlosen Migration wird Ihre eigene benutzerdefinierte REST-API verwendet, um die Anmeldeinformationen eines Benutzers anhand der Angaben des alten Identitätsanbieters zu überprüfen.

Die REST-API muss vor Brute-Force-Angriffen geschützt sein. Ein Angreifer kann mehrere Kennwörter übermitteln und so unter Umständen die Anmeldeinformationen eines Benutzers erraten. Beenden Sie zum Schutz vor derartigen Angriffen die Verarbeitung von Anforderungen für Ihre REST-API, wenn die Anzahl von Anmeldeversuchen einen bestimmten Schwellenwert übersteigt. Schützen Sie außerdem die Kommunikation zwischen Azure AD B2C und Ihrer REST-API. Informationen zum Schützen Ihrer RESTful-APIs für die Produktionsumgebung finden Sie unter Schützen von RESTful-APIs.

Benutzerattribute

Nicht alle Informationen des alten Identitätsanbieter sollten zu Ihrem Azure AD B2C-Verzeichnis migriert werden. Ermitteln Sie vor der Migration, welche Benutzerattribute in Azure AD B2C gespeichert werden sollen.

  • SPEICHERN Sie Folgendes in Azure AD B2C:
    • Benutzername, Kennwort, E-Mail-Adressen, Telefonnummern, Mitgliedschaftsnummern/-IDs
    • Einwilligungsmarker für Datenschutzrichtlinie und Lizenzbedingungen
  • Speichern Sie Folgendes NICHT in Azure AD B2C:
    • Vertrauliche Daten wie Kreditkartennummern, Sozialversicherungsnummern, Krankenakten oder andere Daten, die behördlichen oder branchenspezifischen Complianceregeln unterliegen
    • Marketing- oder Kommunikationspräferenzen, Benutzerverhalten und Erkenntnisse

Verzeichnisbereinigung

Es empfiehlt sich, vor Beginn der Migration Ihr Verzeichnis zu bereinigen.

  • Identifizieren Sie die Benutzerattribute, die in Azure AD B2C gespeichert werden sollen, und migrieren Sie nur das, was Sie benötigen. Bei Bedarf können Sie benutzerdefinierte Attribute erstellen, um weitere Benutzerdaten zu speichern.
  • Wenn Sie aus einer Umgebung mit mehreren Authentifizierungsquellen migrieren, in der beispielsweise jede Anwendung über ein eigenes Benutzerverzeichnis verfügt, verwenden Sie als Migrationsziel ein einheitliches Konto in Azure AD B2C.
  • Wenn mehrere Anwendungen über unterschiedliche Benutzernamen verfügen, können diese mithilfe der Identitätensammlung in einem Azure AD B2C-Benutzerkonto gespeichert werden. Lassen Sie den Benutzer ein Kennwort auswählen, und legen Sie dieses im Verzeichnis fest. Bei der nahtlosen Migration sollte beispielsweise nur das gewählte Kennwort im Azure AD B2C-Konto gespeichert werden.
  • Entfernen Sie nicht verwendete Benutzerkonten, oder migrieren Sie keine veralteten Konten.

Kennwortrichtlinie

Wenn die Konten, die Sie migrieren möchten, nicht über die hohe Kennwortsicherheit verfügen, die von Azure AD B2C erzwungen wird, können Sie die Erzwingung sicherer Kennwörter deaktivieren. Weitere Informationen finden Sie unter Eigenschaft „passwordPolicies“ (Kennwortrichtlinien).

Nächste Schritte

Das Repository azure-ad-b2c/user-migration auf GitHub enthält eine benutzerdefinierte Beispielrichtlinie für die nahtlose Migration sowie ein REST-API-Codebeispiel:

Benutzerdefinierte Richtlinie für die nahtlose Benutzermigration und REST-API-Codebeispiel