Microsoft Identity Manager-Connector für Microsoft Graph
Zusammenfassung
Der Microsoft Identity Manager-Connector für Microsoft Graph ermöglicht zusätzliche Integrationsszenarien für Microsoft Entra ID P1- oder P2-Kunden. Er taucht in der MIM-Oberfläche beim Synchronisieren zusätzlicher Metaverse-Objekte auf, die aus der Microsoft Graph-API Version 1 und Betaversion abgerufen werden.
Behandelte Szenarien
Lebenszyklusverwaltung von B2B-Konten
Im Anfangsszenario des Microsoft Identity Manager-Connector für Microsoft Graph hilft dieser als Connector beim Automatisieren der Lebenszyklusverwaltung über das AD DS-Konto für externe Benutzer. In diesem Szenario synchronisiert ein organization Mitarbeiter mit Microsoft Entra ID von AD DS mithilfe von Microsoft Entra Connect und hat auch Gäste in ihr Microsoft Entra Verzeichnis eingeladen. Das Einladen eines Gasts führt dazu, dass sich ein externes Benutzerobjekt im Microsoft Entra Verzeichnis dieses organization befindet, das sich nicht im AD DS dieses organization befindet. Anschließend möchte der organization diesen Gästen über den Microsoft Entra Anwendungsproxy oder andere Gatewaymechanismen Zugriff auf die lokale integrierte Windows-Authentifizierung oder Kerberos-basierte Anwendungen gewähren. Der Microsoft Entra Anwendungsproxy erfordert, dass jeder Benutzer über ein eigenes AD DS-Konto verfügt, um identifikations- und delegierungszwecken zu dienen.
Informationen zum Konfigurieren der MIM-Synchronisierung zum automatischen Erstellen und Verwalten von AD DS-Konten für Gäste finden Sie im Artikel Microsoft Entra B2B-Zusammenarbeit mit MIM 2016 und dem Microsoft Entra Anwendungsproxy. Dieser Artikel veranschaulicht die Synchronisierungsregeln, die für den Connector erforderlich sind.
Weitere Szenarios der Identitätsverwaltung
Der Connector kann für andere spezifische Identitätsverwaltungsszenarien verwendet werden, die das Erstellen, Lesen, Aktualisieren und Löschen von Benutzer-, Gruppen- und Kontaktobjekten in Microsoft Entra ID umfassen, über die Benutzer- und Gruppensynchronisierung bis hin zu Microsoft Entra ID. Beachten Sie bei der Bewertung potenzieller Szenarien: Dieser Connector kann in einem Szenario nicht betrieben werden, was zu einer Datenflussüberlappung, einem tatsächlichen oder potenziellen Synchronisierungskonflikt mit einer Microsoft Entra Connect-Bereitstellung führen würde. Microsoft Entra Connect wird empfohlen, lokale Verzeichnisse in Microsoft Entra ID zu integrieren, indem Benutzer und Gruppen aus lokalen Verzeichnissen mit Microsoft Entra ID synchronisiert werden. Microsoft Entra Connect verfügt über viele weitere Synchronisierungsfeatures und ermöglicht Szenarien wie Kennwort- und Geräterückschreiben, die für von MIM erstellte Objekte nicht möglich sind. Wenn Daten beispielsweise in AD DS übertragen werden, stellen Sie sicher, dass sie von Microsoft Entra Connect ausgeschlossen sind, um diese Objekte wieder dem Microsoft Entra-Verzeichnis zuzuordnen. Dieser Connector kann auch nicht verwendet werden, um Änderungen an Microsoft Entra-Objekten vorzunehmen, die von Microsoft Entra Connect erstellt wurden.
Vorbereiten der Verwendung des Connectors für Microsoft Graph
Autorisieren des Connectors zum Abrufen oder Verwalten von Objekten in Ihrem Microsoft Entra-Verzeichnis
Der Connector erfordert, dass eine Web-App/API-Anwendung in Microsoft Entra ID erstellt wird, damit sie mit den entsprechenden Berechtigungen autorisiert werden kann, um mit Microsoft Entra Objekten über Microsoft Graph zu arbeiten.
Abbildung 1. Registrierung einer neuen Anwendung
Öffnen Sie die erstellte Anwendung im Azure-Portal, und speichern Sie die Anwendungs-ID als Client-ID für die spätere Verwendung auf der MA-Konnektivitätsseite:
Abbildung 2. Anwendungs-ID
Generieren Sie einen neuen geheimen Clientschlüssel, indem Sie Zertifikate & Geheimnisse öffnen. Legen Sie eine Schlüsselbeschreibung fest, und wählen Sie die maximale Dauer aus. Speichern Sie Die Änderungen, und rufen Sie den geheimen Clientschlüssel ab. Der Wert des geheimen Clientschlüssels ist nach dem Verlassen der Seite nicht mehr verfügbar.
Abbildung 3. Neuer geheimer Clientschlüssel
Erteilen Sie der Anwendung die richtigen Microsoft Graph-Berechtigungen, indem Sie "API-Berechtigungen" öffnen.
Bild 4. Neue API hinzufügen
Wählen Sie "Microsoft Graph"-Anwendungsberechtigungen aus.
Widerrufen Sie alle nicht benötigten Berechtigungen.
Abhängig vom Szenario sollte die folgende Berechtigung zur Anwendung hinzugefügt werden, damit diese die „Microsoft Graph-API“ verwenden darf:
Vorgang mit Objekt Erforderliche Berechtigung Berechtigungstyp Schemaerkennung Application.Read.All
Anwendung Gruppe importieren Group.Read.All
oderGroup.ReadWrite.All
Anwendung Benutzer importieren User.Read.All
,User.ReadWrite.All
,Directory.Read.All
oderDirectory.ReadWrite.All
Anwendung Weitere Informationen zu den erforderlichen Berechtigungen finden Sie in der Berechtigungsreferenz.
Hinweis
Die Application.Read.All-Berechtigung ist für die Schemaerkennung obligatorisch und muss unabhängig vom Objekttypconnector erteilt werden, der verwendet wird.
- Erteilen Sie die Administratoreinwilligung für ausgewählte Berechtigungen.
Installieren des Connectors
- Stellen Sie vor dem Installieren des Connectors sicher, dass auf dem Synchronisierungsserver Folgendes festgelegt ist:
- Microsoft .NET 4.6.2 Framework oder höher
- Microsoft Identity Manager 2016 SP2 und muss Hotfix 4.4.1642.0 KB4021562 oder höher verwenden.
Der Connector für Microsoft Graph steht zusätzlich zu anderen Connectors für Microsoft Identity Manager 2016 SP2 als Download im Microsoft Download Center zur Verfügung.
Starten Sie den MIM-Synchronisierungsdienst neu.
Connector-Konfiguration
- In der Benutzeroberfläche von Synchronization Service Manager wählen Sie Connectors und Erstellen aus. Wählen Sie Graph (Microsoft) aus, erstellen Sie einen Connector, und geben Sie ihm einen aussagekräftigen Namen.
- Geben Sie auf der Benutzeroberfläche des MIM-Synchronisierungsdiensts die Anwendungs-ID und den generierten geheimen Clientschlüssel an. Jeder in MIM Sync konfigurierte Verwaltungs-Agent sollte über eine eigene Anwendung in Microsoft Entra ID verfügen, um zu vermeiden, dass der Import parallel für dieselbe Anwendung ausgeführt wird.
Abbildung 5. Seite Konnektivität
Die Konnektivitätsseite (Abbildung 5) enthält die verwendete Version der Graph-API und den Namen des Mandanten. Die Client-ID und der geheime Clientschlüssel stellen die Anwendungs-ID und den Schlüsselwert der Anwendung dar, die zuvor in Microsoft Entra ID erstellt wurde.
Der Connector verwendet standardmäßig v1.0 und die Anmelde- und Graphendpunkte des globalen Microsoft Graph-Diensts. Wenn sich Ihr Mandant in einer nationalen Cloud befindet, müssen Sie Ihre Konfiguration ändern, um die Endpunkte für die nationale Cloud zu verwenden. Beachten Sie, dass bestimmte Features von Graph, die sich im globalen Dienst befinden, möglicherweise nicht in allen nationalen Clouds verfügbar sind.
- Nehmen Sie auf der Seite „Globale Parameter“ alle erforderlichen Änderungen vor:
Abbildung 6. Seite „Globale Parameter“
Die Seite „Globale Parameter“ enthält die folgenden Einstellungen:
DateTime-Format: Format, das für jedes Attribut mit Edm.DateTimeOffset-Typ verwendet wird. Alle Daten werden mithilfe dieses Formats beim Import in eine Zeichenfolge konvertiert. Das festgelegte Format wird für alle Attribute übernommen, die das Datum speichern.
HTTP-Timeout (Sekunden): Timeout in Sekunden, das bei jedem HTTP-Aufruf von Graph verwendet wird.
Kennwortänderung für erstellten Benutzer beim nächsten Zeichen erzwingen: Diese Option wird für neue Benutzer verwendet, die während des Exports erstellt werden. Wenn die Option aktiviert ist, dann wird die Eigenschaft forceChangePasswordNextSignIn auf „true“ gesetzt, andernfalls auf „false“.
Konfigurieren von Connectorschema und -vorgängen
- Konfigurieren Sie das Schema. Der Connector unterstützt die folgende Liste von Objekttypen, wenn er mit dem Graph v1.0-Endpunkt verwendet wird:
Benutzer
Vollständiger Import/Deltaimport
Export (Hinzufügen, Aktualisieren, Löschen)
Gruppieren
Vollständiger Import/Deltaimport
Export (Hinzufügen, Aktualisieren, Löschen)
Zusätzliche Objekttypen sind möglicherweise sichtbar, wenn Sie den Connector für die Verwendung des Graph-Betaendpunkts konfigurieren.
Die Liste der unterstützten Attributtypen:
Edm.Boolean
Edm.String
Edm.DateTimeOffset
(Zeichenfolge im Connectorbereich)microsoft.graph.directoryObject
(Verweis im Connectorbereich auf eines der unterstützten Objekte)microsoft.graph.contact
Mehrwertige Attribute (Collection) werden für jeden Typ aus der obigen Liste ebenfalls unterstützt.
Der Connector verwendet das Attribut id
zum Verankern und DN für alle Objekte. Daher ist die Umbenennung nicht erforderlich, da Graph-API es einem Objekt nicht erlaubt, sein id
Attribut zu ändern.
Gültigkeitsdauer Zugriffstoken
Eine Graph-Anwendung erfordert für den Zugriff auf die Graph-API ein Zugriffstoken. Ein Connector fordert für jede Importiteration ein neues Zugriffstoken an (die Importiteration hängt von der Seitengröße ab). Beispiel:
Microsoft Entra ID enthält 10.000 Objekte.
Die im Connector konfigurierte Seitengröße ist 5000.
In diesem Fall gibt es während des Imports zwei Iterationen, von denen jede 5.000 Objekte an Sync zurückgibt. Daher wird zweimal ein neues Zugriffstoken angefordert.
Während des Exports wird für jedes Objekt, das hinzugefügt, aktualisiert oder gelöscht werden muss, ein neues Zugriffstoken angefordert.
Abfragefilter
Graph-API Endpunkte bieten die Möglichkeit, die Anzahl der von GET-Abfragen zurückgegebenen Objekte zu begrenzen, indem $filter Parameter eingeführt wird.
Aktivieren Sie auf der Seite Schema 1 der Connectoreigenschaften das Kontrollkästchen Filter hinzufügen , um die Verwendung von Abfragefiltern zur Verbesserung des vollständigen Importleistungszyklus zu aktivieren.
Geben Sie anschließend auf der Seite Schema 2 einen Ausdruck ein, der zum Filtern von Benutzern, Gruppen, Kontakten oder Dienstprinzipalen verwendet werden soll.
Im obigen Screenshot ist der Filter startsWith(displayName,'J') so festgelegt, dass nur Benutzer gelesen werden, deren displayName-Attributwert mit "J" beginnt.
Stellen Sie sicher, dass das im Filterausdruck verwendete Attribut in den Connectoreigenschaften ausgewählt ist.
Weitere Informationen zur Verwendung $filter Abfrageparameter finden Sie in diesem Artikel: Verwenden von Abfrageparametern zum Anpassen von Antworten.
Hinweis
Der Delta-Abfrageendpunkt bietet derzeit keine Filterfunktionen, daher ist die Verwendung von Filtern nur auf den vollständigen Import beschränkt. Beim Versuch, die Deltaimportausführung mit aktivierten Abfragefiltern zu starten, wird ein Fehler angezeigt.
Problembehandlung
Aktivieren von Protokollen
Wenn in Graph Probleme auftreten, können Protokolle verwendet werden, um diese zu lokalisieren. So können Ablaufverfolgungen auf die gleiche Weise aktiviert werden wie für generische Connectors. Oder einfach durch Hinzufügen des Folgenden zu miiserver.exe.config
(in Abschnitt system.diagnostics/sources
):
<source name="ConnectorsLog" switchValue="Verbose">
<listeners>
<add initializeData="ConnectorsLog"
type="System.Diagnostics.EventLogTraceListener, System, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ConnectorsLogListener" traceOutputOptions="LogicalOperationStack,
DateTime, Timestamp, Callstack" />
<remove name="Default" />
</listeners>
</source>
Hinweis
Wenn „Diesen Verwaltungs-Agent in einem separaten Prozess ausführen“ aktiviert ist, sollte dllhost.exe.config
anstelle von miiserver.exe.config
verwendet werden.
Fehler durch abgelaufenes Zugriffstoken
Connector meldet möglicherweise HTTP-Fehler 401 Unauthorized, Meldung „Das Zugriffstoken ist abgelaufen.“:
Abbildung 7. „Das Zugriffstoken ist abgelaufen.“ Fehler
Die Ursache für dieses Problem könnte die Konfiguration der Zugriffstoken-Lebensdauer auf Azure-Seite sein. Standardmäßig verfällt das Zugriffstoken nach 1 Stunde. Informationen zur Erhöhung der Ablaufzeit finden Sie in diesem Artikel.
Beispiel hierfür mit Azure AD PowerShell Module Public Preview Release
New-AzureADPolicy -Definition @('{"TokenLifetimePolicy":{"Version":1, "AccessTokenLifetime":"5:00:00"}}}') -DisplayName "OrganizationDefaultPolicyScenario" -IsOrganizationDefault $true -Type "TokenLifetimePolicy"
Nächste Schritte
- Graph-Tester (sehr hilfreich für die Problembehandlung bei HTTP-Aufrufen)
- Versionsverwaltung, Support und Richtlinien für wesentliche Änderungen für Microsoft Graph
- Bereitstellungen nationaler Clouds von Microsoft Graph
- Herunterladen Microsoft Identity Manager Connectors für Microsoft GraphMIM B2B End-to-End-Bereitstellung