Voordat u begint
Zorg ervoor dat de client of leverancier van de verbinding de “Azure AD – clienthandleiding” heeft ontvangen. Zij moeten de noodzakelijke stappen uitvoeren voordat u iets kunt doen. Als zij de handleiding correct hebben gevolgd, zou u de volgende waarden van hen moeten hebben ontvangen:
- Client-ID
- Clientgeheim
- Tenant-ID
- Groeps-ID
- Resource (alleen van toepassing op v1 Graph API-apps – dit wordt niet besproken in de clienthandleiding, dus vraag dit op bij de client/leverancier als v1 Graph API wordt gebruikt)
Noodzakelijke stappen voor het instellen van een Graph-toepassing
- Klik op de navigatieknop op Setup (of ga in het linkermenu naar Admin > Setup)
- Zoek het submenu “Applications”
- Klik op “Create application”
- Vul in het scherm Application de noodzakelijke gegevens in. Selecteer in het veld “Application” de Graph API-app waarmee u verbinding wilt maken. In deze handleiding volgen we de toepassing “Azure AD”. Als er een situatie is waarin een algemene Graph API-toepassing moet worden gebruikt, selecteert u “Custom Graph application”. Stappen 5 en 6 zijn hetzelfde voor dit soort toepassingen.
- Klik op “Generate default key value pairs” (houd er rekening mee dat u hier de versie van de Graph API kunt wijzigen. De standaardversie is versie 2. Als versie 1 wordt gebruikt, vraag dan de resourcewaarde op bij de client/leverancier)
- Onder de toepassing vindt u de aangemaakte sleutel-waardeparen die nodig zijn voor elke Graph-toepassing, verdeeld over productie, back-up en test. Vul de waarden die u van de leverancier/client hebt ontvangen in de benodigde velden in. De koppeling is als volgt:
a. client_id = Client-ID
b. client_secret = Clientgeheim
c. scope = moet worden ingesteld op https://graph.microsoft.com/.default (tenzij de client/leverancier anders heeft aangegeven)
d. tenant_id = Tenant-ID
e. resource = Resource (als versie 1 wordt gebruikt)
Klik op “Test connection” om te controleren of uw waarden correct zijn en of u verbinding kunt maken met de Graph API van de client/leverancier. Deze verbinding probeert een toegangstoken te verkrijgen. Als dit lukt, is de verbinding succesvol tot stand gebracht.
- Stel voor Azure AD “Enable GetUsers” in op “yes”
Hierna worden enkele nieuwe sleutel-waardeparen gegenereerd. De noodzakelijke en optionele acties zijn:
a. GetUsers_defaultContactCategory – Voer in de kolom “value” de categorieverwijzing in waarin u contacten wilt laten aanmaken
b. GetUsers_defaultGroup / GetUsers_defaultProfile – Selecteer in de kolom “Related object” de Group of Profile die u aan gebruikers wilt toewijzen
c. GetUsers_defaultUserType – Selecteer in de kolom “Related object” het licentietype van de gebruikers die worden aangemaakt
d. GetUsers_groupid – Vul dit in met de groeps-ID die u van de leverancier/client hebt ontvangen
e. GetUsers_scheduledScript – Voer een aangepast script in voor wanneer de gegevens worden opgehaald. Doe dit alleen als er aangepast werk moet worden uitgevoerd voor de client
f. GetUsers_selectQuery – U kunt een select-query toevoegen om de velden die voor de gebruikers worden opgehaald te beperken of uit te breiden. Dit is alleen van toepassing op aangepast werk dat voor de client moet worden uitgevoerd
- Naast het aanmaken van de sleutel-waardeparen is er een gepland script aangemaakt. Breng de noodzakelijke wijzigingen aan, maar zorg ervoor dat u op zijn minst het veld “Execute as” instelt.
- Optioneel kunt u een archieflimiet instellen. Dit wordt gebruikt om grootschalige verwijderacties te voorkomen als er iets mis is met de opgehaalde gegevens
Uitleg over de Azure AD-verbinding
Wanneer een gebruiker wordt aangemaakt vanuit de Azure AD-verbinding, is het belangrijkste om rekening mee te houden dat de volgende velden worden gebruikt om de Azure AD-gebruikers te bepalen:
- Contact.externalReference
- Contact.datasource
- SystemUser.datasource
- SystemUser.externalReference
Wanneer deze verbinding wordt gebruikt, kunnen de bovenstaande velden dus niet meer voor andere doeleinden worden gebruikt.
Het geplande script, dat de actieve systeemgebruikers ophaalt, doet het volgende:
- Vindt alle contacten die met deze toepassing zijn aangemaakt op basis van de referentie. Het gebruikte veld is datasource
- Markeert alle systeemgebruikers voor verwijdering
- Werk vervolgens alle gebruikers bij die via de API zijn opgehaald
- De gebruikers die niet zijn bijgewerkt (en nog steeds zijn gemarkeerd) worden verwijderd (als het aantal binnen de archieflimiet valt)
Als u de waarde voor “GetUsers” instelt op “no”, wordt het geplande script gedeactiveerd.
Als er iets misgaat met de verbinding, kunt u onder de toepassing een gebeurtenislogboek vinden. Hierin wordt de onbewerkte informatie geplaatst die door de webservice is teruggestuurd, zodat deze volledig kan worden geanalyseerd.
Aangepaste mogelijkheden voor clients
Als er aangepaste logica nodig is met betrekking tot de gebruikers, kunnen enkele scripts worden gebruikt. Let op: deze lijst is niet volledig. Zoek naar SwbApplication voor een lijst met alle scripts en zoek eventueel naar een script dat de noodzakelijke acties uitvoert.
- SwbApplicationIsActiveInOperationMode – Dit script kan worden gebruikt om te controleren of een toepassing actief is in de huidige operationele modus
- SwbApplicationGraphAccessToken – Dit script wordt gebruikt om een toegangstoken te verzamelen. Als er geen token bestaat of als het is verlopen, wordt een nieuw token aangemaakt. Het script retourneert het toegangstoken voor de Graph API
- SwbApplicationGraphGetWebservice - Met dit script kunt u aangeven welk standaard Graph API-webservice-eindpunt u wilt gebruiken. Als u bijvoorbeeld het GET-eindpunt moet ophalen, kunt u “GET” doorgeven
- SwbApplicationGetKeyValuePairsMap – Met dit script wordt een toewijzing van alle sleutel-waardeparen geretourneerd. Op die manier kunnen waarden worden gebruikt wanneer dat nodig is
- SwbApplicationGraphUpdateUser – Met deze functie kunt u een node aanmaken waarmee u een gebruikerswaarde in Graph API kunt bijwerken. Let op: u moet waarden in Azure kunnen bewerken, waarvoor andere rechten nodig zijn dan de rechten die in de clienthandleiding worden genoemd
Beperkingen van de Azure AD-verbinding
Er zijn enkele beperkingen aan de Azure AD-verbinding:
- Groepen binnen groepen worden momenteel niet meegenomen. Alleen gebruikers binnen de groep worden overgedragen
- Momenteel wordt de SKIM-standaard (voor gebruikersprovisioning) niet ondersteund
- Just-in-time provisioning is niet mogelijk met deze verbinding en moet afzonderlijk worden geïmplementeerd