Delen via


Microsoft Identity Manager-connector voor Microsoft Graph

Samenvatting

De Microsoft Identity Manager-connector voor Microsoft Graph maakt aanvullende integratiescenario's mogelijk voor Klanten met Microsoft Entra ID P1 of P2. In de metaverse van MIM-synchronisatie verschijnen extra objecten die zijn verkregen uit de Microsoft Graph API v1 en bèta.

Behandelde scenario's

Levenscyclusbeheer van B2B-accounts

Het eerste scenario voor de Microsoft Identity Manager-connector voor Microsoft Graph is als connector voor het automatiseren van levenscyclusbeheer van AD DS-accounts voor externe gebruikers. In dit scenario synchroniseert een organisatie werknemers met Microsoft Entra ID van AD DS met behulp van Microsoft Entra Connect en heeft ook gasten uitgenodigd in hun Microsoft Entra-adreslijst. Het uitnodigen van een gast resulteert in een extern gebruikersobject in de Microsoft Entra-directory van die organisatie, die zich niet in de AD DS van die organisatie bevindt. Vervolgens wil de organisatie die gasten toegang geven tot lokale Windows geïntegreerde verificatie of toepassingen op basis van Kerberos, via de Microsoft Entra-toepassingsproxy of andere gatewaymechanismen. De Microsoft Entra-toepassingsproxy vereist dat elke gebruiker een eigen AD DS-account heeft voor identificatie- en delegatiedoeleinden.

Lees, nadat u de instructies in dit artikel hebt gelezen, verder in het artikel Microsoft Entra business-to-business (B2B) samenwerking met MIM 2016 en de Microsoft Entra-toepassingsproxyom te leren hoe u MIM-synchronisatie configureert om automatisch AD DS-accounts voor gasten te maken en te onderhouden. Dit artikel illustreert de synchronisatieregels die nodig zijn voor de connector.

Andere scenario's voor identiteitsbeheer

De connector kan worden gebruikt voor andere specifieke identiteitsbeheerscenario's met betrekking tot het maken, lezen, bijwerken en verwijderen van gebruikers-, groeps- en contactobjecten in Microsoft Entra-id, naast synchronisatie van gebruikers en groepen met Microsoft Entra-id. Houd er bij het evalueren van mogelijke scenario's rekening mee: deze connector kan niet worden uitgevoerd in een scenario, wat zou leiden tot overlapping, werkelijke of potentiële synchronisatieconflicten met een Microsoft Entra Connect-implementatie. Microsoft Entra Connect is de aanbevolen benadering voor het integreren van on-premises mappen met Microsoft Entra ID, door gebruikers en groepen van on-premises mappen te synchroniseren met Microsoft Entra ID. Microsoft Entra Connect heeft nog veel meer synchronisatiefuncties en maakt scenario's mogelijk, zoals wachtwoord en apparaat terugschrijven, die niet mogelijk zijn voor objecten die door MIM zijn gemaakt. Als er bijvoorbeeld gegevens worden overgebracht naar AD DS, moet u ervoor zorgen dat deze worden uitgesloten van de pogingen van Microsoft Entra Connect om die objecten terug te koppelen aan de Microsoft Entra-directory. Deze connector kan ook niet worden gebruikt om wijzigingen aan te brengen in Microsoft Entra-objecten, die zijn gemaakt door Microsoft Entra Connect.

Voorbereiden op het gebruik van de Connector voor Microsoft Graph

De connector autoriseren voor het ophalen of beheren van objecten in uw Microsoft Entra-map

  1. Voor de connector moet een web-app/API-toepassing worden gemaakt in Microsoft Entra ID, zodat deze kan worden geautoriseerd met de juiste machtigingen voor gebruik op Microsoft Entra-objecten via Microsoft Graph.

    Afbeelding van de knop Registratie van nieuwe toepassing Afbeelding van toepassingsregistratie

    Afbeelding 1. Registratie van nieuwe toepassing

  2. Open in Azure Portal de gemaakte toepassing en sla de toepassings-id op als een client-id die later op de connectiviteitspagina van de MA moet worden gebruikt:

  3. Genereer nieuw cliëntgeheim door certificaten & geheimen te openen. Stel een beschrijving van de sleutel in en selecteer de maximale duur. Sla wijzigingen op en haal het clientgeheim op. De waarde van het clientgeheim is niet meer beschikbaar om weer te geven nadat u de pagina hebt verlaten.

    Afbeelding van de knop om een nieuw geheim toe te voegen

    Afbeelding 2. Nieuw clientgeheim

  4. Geef de juiste 'Microsoft Graph'-machtigingen aan de toepassing door API-machtigingen te openen

    afbeelding van de knop Machtigingen toevoegen Afbeelding 3. Nieuwe API toevoegen

    Selecteer 'Microsoft Graph'-toepassingsmachtigingen. afbeelding van toepassingsmachtigingen

    Alle overbodige machtigingen intrekken.

    afbeelding van niet-verleende toepassingsmachtigingen

    De volgende machtiging moet worden toegevoegd aan de toepassing, zodat deze de Microsoft Graph API kan gebruiken, afhankelijk van het scenario:

    Bewerking met object Toestemming vereist Machtigingstype
    schemadetectie Application.Read.All Applicatie
    Importgroep Group.Read.All of Group.ReadWrite.All Applicatie
    Gebruiker importeren User.Read.All, User.ReadWrite.All, Directory.Read.All of Directory.ReadWrite.All Applicatie

    Meer details over de vereiste machtigingen zijn te vinden in de machtigingen-referentie.

Notitie

De machtiging Application.Read.All is verplicht voor schemadetectie en moet worden verleend, ongeacht met welk objecttype de connector werkt.

  1. Beheerderstoestemming verlenen voor geselecteerde machtigingen. afbeelding van verleende beheerderstoestemming

De connector installeren

  1. Voordat u de connector installeert, moet u ervoor zorgen dat u het volgende op de synchronisatieserver hebt:
  • Microsoft .NET 4.6.2 Framework of hoger
  • Microsoft Identity Manager 2016 SP2 en moet hotfix 4.4.1642.0 KB4021562 of hoger gebruiken.
  1. De connector voor Microsoft Graph is, naast andere connectors voor Microsoft Identity Manager 2016 SP2, beschikbaar als download van het Microsoft Downloadcentrum.

  2. Start de MIM-synchronisatieservice opnieuw.

Connectorconfiguratie

  1. Selecteer in de gebruikersinterface van Synchronization Service Manager Connectors en maken. Selecteer Graph (Microsoft), maak een connector en geef deze een beschrijvende naam.

nieuwe connectorafbeelding

  1. Geef in de gebruikersinterface van de MIM-synchronisatieservice de toepassings-id en het gegenereerde clientgeheim op. Elke beheeragent die is geconfigureerd in MIM Sync, moet een eigen toepassing in Microsoft Entra-id hebben om te voorkomen dat import parallel voor dezelfde toepassing wordt uitgevoerd.

Afbeelding 4. Connectiviteitspagina

De connectiviteitspagina (afbeelding 4) bevat de Graph API-versie die wordt gebruikt en de tenantnaam. De client-id en het clientgeheim vertegenwoordigen de toepassings-id en sleutelwaarde van de toepassing die eerder is gemaakt in Microsoft Entra-id.

De connector is standaard ingesteld op de v1.0 en de aanmeldings- en grafiekeindpunten van de globale Microsoft Graph-service. Als uw tenant zich in een nationale cloud bevindt, moet u uw configuratie wijzigen om de -eindpunten te gebruiken voor de nationale cloud. Bepaalde functies van Graph die zich in de globale service bevinden, zijn mogelijk niet beschikbaar in alle nationale clouds.

  1. Breng de benodigde wijzigingen aan op de pagina Globale parameters:

afbeelding van de globale parameterspagina

Afbeelding 5. Algemene parameterspagina

De pagina Globale parameters bevat de volgende instellingen:

  • DateTime-indeling: indeling die wordt gebruikt voor elk kenmerk met het type Edm.DateTimeOffset. Alle datums worden geconverteerd naar een tekenreeks met behulp van die notatie tijdens het importeren. De ingestelde indeling wordt toegepast op elk kenmerk, waarmee de datum wordt opgeslagen.

  • HTTP-time-out (seconden): time-out in seconden die worden gebruikt tijdens elke HTTP-aanroep naar Graph.

  • Dwing het wijzigen van het wachtwoord af voor de aangemaakte gebruiker bij de volgende aanmelding: deze optie wordt gebruikt voor nieuwe gebruikers die worden aangemaakt tijdens de export. Als de optie is ingeschakeld, wordt de eigenschap forceChangePasswordNextSignIn ingesteld op true, anders is het false.

Het connectorschema en de bewerkingen configureren

  1. Configureer het schema. De connector ondersteunt de volgende lijst met objecttypen wanneer deze wordt gebruikt met het Graph v1.0-eindpunt:
  • Gebruiker

    • Volledige/Delta-import

    • Exporteren (toevoegen, bijwerken, verwijderen)

  • Groep

    • Volledige/Delta-import

    • Exporteren (toevoegen, bijwerken, verwijderen)

Aanvullende objecttypen zijn mogelijk zichtbaar wanneer u de connector configureert voor het gebruik van het Bèta-eindpunt van Graph.

De lijst met kenmerktypen die worden ondersteund:

  • Edm.Boolean

  • Edm.String

  • Edm.DateTimeOffset (tekenreeks in verbindingsruimte)

  • microsoft.graph.directoryObject (verwijzing in verbindingsruimte naar een van de ondersteunde objecten)

  • microsoft.graph.contact

Kenmerken met meerdere waarden (verzameling) worden ook ondersteund voor elk type uit de bovenstaande lijst.

De connector maakt gebruik van het kenmerk 'id' voor anker en DN voor alle objecten. Daarom is hernoemen niet nodig, omdat de Graph API niet toestaat dat een object zijn id kenmerk wijzigt.

Levensduur van toegangstoken

Voor een Graph-toepassing is een toegangstoken vereist voor toegang tot de Graph API. Een connector vraagt een nieuw toegangstoken aan voor elke import-iteratie (de import-iteratie is afhankelijk van de paginagrootte). Bijvoorbeeld:

  • Microsoft Entra-id bevat 10000 objecten

  • Het paginaformaat dat is geconfigureerd in de connector is 5000

In dit geval zullen er tijdens het importeren twee iteraties plaatsvinden, waarbij elk van hen 5000 objecten naar Sync retourneert. Er wordt dus twee keer een nieuw toegangstoken aangevraagd.

Tijdens het exporteren wordt een nieuw toegangstoken aangevraagd voor elk object dat moet worden toegevoegd/bijgewerkt/verwijderd.

Queryfilters

Graph API-eindpunten bieden een mogelijkheid om de hoeveelheid objecten die worden geretourneerd door GET-query's te beperken door $filter parameter te introduceren.

Als u het gebruik van queryfilters wilt inschakelen om de volledige importprestatiescyclus te verbeteren, schakelt u op de pagina Schema 1 connectoreigenschappen het selectievakje objectenfilter toevoegen in.

pagina Connectorinstellingen met één afbeelding waarin het selectievakje voor Objectenfilter toevoegen is ingeschakeld

Daarna typt u op pagina schema 2 een expressie die moet worden gebruikt om gebruikers, groepen, contactpersonen of service-principals te filteren.

Connectorinstellingenpagina twee afbeeldingsweergave met een voorbeeldfilter startsWith(displayName,'J')

In de bovenstaande schermopname wordt het filter startsWith(displayName,'J') ingesteld om alleen gebruikers te lezen waarvan de waarde van het displayName-kenmerk begint met 'J'.

Zorg ervoor dat het kenmerk dat wordt gebruikt in de filterexpressie is geselecteerd in connectoreigenschappen.

paginaafbeelding van connectorinstellingen met een displayName-kenmerk geselecteerd

Zie dit artikel voor meer informatie over $filter queryparametergebruik: Queryparameters gebruiken om antwoordenaan te passen.

Notitie

Delta-query-eindpunt biedt momenteel geen filtermogelijkheden, daarom is het gebruik van filters beperkt tot alleen volledige import. U krijgt een foutmelding bij het starten van de delta-importuitvoering, waarbij queryfilters zijn ingeschakeld.

Probleemoplossing

Logboeken inschakelen

Als er problemen zijn in Graph, kunnen logboeken worden gebruikt om het probleem te lokaliseren. Traceringen kunnen dus op op dezelfde manier worden ingeschakeld als bij Generic connectors. U kunt ook het volgende toevoegen aan miiserver.exe.config (in system.diagnostics/sources sectie):

<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>

Notitie

Als 'Deze beheeragent uitvoeren in een afzonderlijk proces' is ingeschakeld, moet dllhost.exe.config worden gebruikt in plaats van miiserver.exe.config.

fout Access-token is verlopen

Connector kan HTTP-fout 401 Niet geautoriseerd retourneren, bericht 'Toegangstoken is verlopen':

foutdetails afbeelding

Afbeelding 6. 'Toegangstoken is verlopen'. Fout

De oorzaak van dit probleem is mogelijk de configuratie van de levensduur van het toegangstoken vanaf de Azure-zijde. Standaard verloopt het toegangstoken na 1 uur. Zie dit artikelom de verlooptijd te verlengen.

Voorbeeld hiervan met openbare preview-versie van Azure AD PowerShell-module

levensduur van acces-token

New-AzureADPolicy -Definition @('{"TokenLifetimePolicy":{"Version":1, "AccessTokenLifetime":"5:00:00"}}') -DisplayName "OrganizationDefaultPolicyScenario" -IsOrganizationDefault $true -Type "TokenLifetimePolicy"

Volgende stappen