# Vereisten en installatie

## Vereisten

Zorg ervoor dat je aan de volgende vereisten voldoet voordat je begint met de installatie van Cloud Sync:

- **Een actieve Azure-abonnement in de tenant**: Je kunt een bestaand [abonnement in Azure](https://portal.azure.com/#view/Microsoft_Azure_Billing/SubscriptionsBladeV2) gebruiken of een [nieuw abonnement](https://learn.microsoft.com/en-us/azure/cost-management-billing/manage/create-subscription) aanmaken. Je hebt de rol Eigenaar of Bijdrager nodig om dit abonnement te kunnen bewerken.

- **Global Administrator (of vergelijkbare) rol in de Azure-tenant**: Vereist om het automation account [leesrechten voor Exchange Online](https://learn.microsoft.com/en-us/powershell/exchange/connect-exo-powershell-managed-identity?view=exchange-ps) te verlenen.

- **Beheerdersrechten in Zivver**: Vereist om een [API-sleutel](https://app.zivver.com/organization/api-keys) aan te maken om verbinding te maken met Zivver. Als je organisatie [Role-Based Access Control](https://docs.zivver.com/nl/admin/webapp/references/set-admin-roles.html) gebruikt, moet dit een volledig beheerdersaccount zijn.

- **Alle domeinen die e-mail ontvangen geclaimd**: Zie [Hoe je een domein claimt in Zivver](https://docs.zivver.com/nl/admin/webapp/references/how-to-claim-a-domain.html) voor instructies.

- **_Optioneel_: Maak een bronfiltergroep aan**: Maak een (security)groep in Azure als je alleen een deel van de mailboxen in de tenant wilt synchroniseren. Zie de [Cloud Sync FAQ](https://docs.zivver.com/nl/admin/cloudsync/faq.html) om te controleren welke soorten groepen worden ondersteund.

>  **Waarschuwing**  
> Controleer voordat je doorgaat met de implementatie van Zivver Cloud Sync je [IdP](https://docs.zivver.com/nl/admin/cloudsync/check-zivveraccountkey-entra-id.html) om zeker te zijn dat `user.objectid` wordt gebruikt als waarde voor `ZivverAccountKey`. Een correcte configuratie van `ZivverAccountKey` is vereist voor een correcte werking van Cloud Sync.

## Hoe Cloud Sync in te stellen

[Setup Instructions Zivver Cloud Sync](https://www.youtube.com/watch?v=Gnn_ZTEpVgc)

Deze handleiding beschrijft de stappen om Cloud Sync in Azure op te zetten.

>  **Waarschuwing**  
> **Controleer de resultaten voordat je synchroniseert**  
> Controleer de synchronisatieresultaten zorgvuldig voordat je de synchronisatie uitvoert. Neem contact met ons op via [support](https://support.zivver.com/s/contactsupport?language=nl_NL) als je problemen ervaart.

01. Klik op deze knop om het automation account naar Azure te deployen:  
     
02. Log in met je Azure administrator account en vul de velden in het formulier in:

- _Subscription, Resource Group en Region_:  
      Dit is de locatie waar het Azure Automation account voor Cloud Sync in jouw Azure tenant wordt geplaatst.  
    - _Zivver API Key_:  
      Plak de API-key die je hebt aangemaakt in het Zivver [administrator portal](https://app.zivver.com/organization/api-keys). De API-key geeft Cloud Sync toegang tot je Zivver tenant.  
    - _Daily Start Time UTC_:  
      Voeg de tijd toe waarop Cloud Sync dagelijks moet starten in UTC. Kies een tijd buiten de kantooruren van je organisatie.  
    - _Target Filter_:  
      Specifieke mailboxes of domeinen die hier worden ingevuld, worden niet aangepast in Zivver. Gebruik dit filter als je Zivver admin-account niet bestaat in de Exchange Online tenant. Scheid meerdere waarden met een komma (bijv. [admin@it-supplier.com](mailto:admin@it-supplier.com), externaldomain.uk).  
    - _Source Filter_:  
      Vul de ObjectID in van de groep die gesynchroniseerd moet worden. Je kunt meerdere ObjectID’s toevoegen om gebruikers uit meerdere groepen te synchroniseren. Alleen mailboxes die lid zijn van deze groepen worden naar Zivver gesynchroniseerd. Als het Group Filter leeg is, worden alle mailboxes van de Included Domains gesynchroniseerd. Scheid meerdere waarden met een komma (bijv. b74fd2c0-3d1a-4b7a-bc88-123456789abc, e5b3d8e2-f3b4-4a8d-9b7d-abcdef123456). Vind de Object ID(s) van groepen via Groups in de [Azure Portal](https://portal.azure.com/#view/Microsoft_AAD_IAM/GroupsManagementMenuBlade/~/AllGroups).
    - _Email Report Sender_:  
      Vul het e-mailadres in van de afzender van het e-mailrapport. Dit moet een mailbox zijn in de tenant (bijv. [sender@domain.com](mailto:sender@domain.com)).  
    - _Email Report Recipients_:  
      Vul de e-mailadressen in van de ontvanger(s) van het e-mailrapport. Dit kunnen ook mailboxen buiten de tenant zijn. Scheid meerdere waarden met een komma (bijv. [recipient1@domain.com](mailto:recipient1@domain.com), [recipient2@example.uk](mailto:recipient2@example.uk)).  
    - _Organizational Units Domains_:  
      Activeer dit als je organisatorische eenheden gebruikt die zijn gebaseerd op de primaire e-mailadressen van mailboxen in Exchange Online. Elk domein dat overeenkomt met een organisatorische eenheid moet worden ingesteld als OU-identifier in het [Zivver Admin Portal](https://app.zivver.com/organization/units). Niet combineren met _Organizational Units Groups_.  
    - _Organizational Units Groups_:  
      Activeer dit als je organisatorische eenheden gebruikt die gebaseerd zijn op een specifieke security group. De UUID van elke groep die hiervoor wordt gebruikt moet als OU-identifier van de bijbehorende organisatorische eenheid in het [Zivver Admin Portal](https://app.zivver.com/organization/units) worden toegevoegd. Niet combineren met _Organizational Units Domains_.

Klik op Review + Create en klik op het volgende scherm op Create.

03. Klik rechtsboven op de _Cloud Shell_ om een PowerShell-terminal te starten. Je hoeft geen opslaglocatie in te stellen.

>  **Waarschuwing**  
> **Andere PowerShell-terminals worden niet aanbevolen**  
> Het wordt niet aanbevolen om andere PowerShell-terminals te gebruiken dan de Cloud Shell. De voorgestelde PowerShell-code kan mislukken vanwege ontbrekende modules of authenticatiefuncties.

04. Om te authenticeren en de juiste rechten in te stellen, plak je de volgende code in de terminal en druk op **Enter**:

```powershell
    # Allow Graph Command Line Tools
    Connect-MgGraph -Scopes AppRoleAssignment.ReadWrite.All,Application.Read.All,RoleManagement.ReadWrite.Directory
    ```

05. Sta _Microsoft Graph Command Line Tools_ toe door de stappen te volgen die in de Cloud Shell worden aangegeven: `Om in te loggen, gebruik een webbrowser om de pagina https://microsoft.com/devicelogin te openen en voer de code [123456] in om te authenticeren.`

06. Na succesvolle authenticatie, voer de onderstaande PowerShell-code uit om leesrechten toe te wijzen aan Exchange Online. Controleer of alle code correct is uitgevoerd. **Sluit de Cloud Shell niet, want je hebt deze nodig voor de volgende stap.**

```powershell
    # Get the ID of the Managed Identity
    $ResourceId = (Get-AzADServicePrincipal -DisplayName "ZivverCloudSync").Id

# Assign API permissions Exchange Online
    $AppRoleId = "dc50a0fb-09a3-484d-be87-e023b12c6440"
    $MsOfficeId = (Get-MgServicePrincipal -Filter "DisplayName eq 'Office 365 Exchange Online'").Id

New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $ResourceId -PrincipalId $ResourceId -AppRoleId $AppRoleId -ResourceId $MsOfficeId

# Assign the Global Reader role
    $RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Global Reader'").Id

New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $ResourceId -RoleDefinitionId $RoleID -DirectoryScopeId "/"

# Assigned permissions to read from Exchange Online
    ```

>  **Tip**  
> Krijg je de foutmelding `[Could not load file or assembly 'Microsoft.Graph.Authentication, Version=2.26.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. Assembly with same name is already loaded]`? Voer dan de volgende opdrachten uit in de Cloud Shell om dit op te lossen:

```powershell
    Get-InstalledModule Microsoft.Graph* | Uninstall-Module -Force
    Remove-Module Microsoft.Graph* -Force
    Install-Module Microsoft.Graph -AllowClobber -Force
    ```

07. Om het e-mailrapport te verzenden, heeft Cloud Sync [machtiging om e-mails te verzenden](https://learn.microsoft.com/en-us/graph/auth-limit-mailbox-access) voor de verzendende mailbox nodig. Plak de volgende code in de Cloud Shell:

```powershell
    # Connect to Exchange Online
    Connect-ExchangeOnline

# Create a mail enabled security group with only the Sender as member
    $AutomationAccount = Get-AzResource -ResourceType "Microsoft.Automation/automationAccounts" | Where-Object { $_.Name -eq 'ZivverCloudSync' }

$sender = Get-AzAutomationVariable -AutomationAccountName $AutomationAccount.Name -Name "CLOUD_SYNC__EMAIL_REPORT_SENDER" -ResourceGroupName $AutomationAccount.ResourceGroupName

$mesg = New-DistributionGroup -Name "Zivver Cloud Sync Mail Report" -Members $sender.value -Type "Security"

# Restrict Mail.Send Permission to only this security group
    New-ApplicationAccessPolicy -AppId $ResourceId -PolicyScopeGroupId $mesg -AccessRight RestrictAccess -Description "Restrict Mail.Send permission for Zivver Cloud Sync."

# Assign Graph API Mail.Send Permission to the Managed Identity
    $AppRoleId = "b633e1c5-b582-4048-a93e-9f11b44c7e96"
    $MsOfficeId = (Get-MgServicePrincipal -Filter "DisplayName eq 'Microsoft Graph'").Id

New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $ResourceId -PrincipalId $ResourceId -AppRoleId $AppRoleId -ResourceId $MsOfficeId

# Assigned permissions to send email from a specific mailbox
    ```

08. Zoek in de Azure-tenant naar **Automation-accounts** en open het Automation Account genaamd _ZivverCloudSync_.

09. Zoek in het Automation Account naar **Runbooks** en open het _ZivverCloudSyncLoader_ runbook.

10. Klik in het runbook op **starten** en daarna op starten. Cloud Sync voert nu een preview uit zonder wijzigingen door te voeren.

11. Wacht een paar minuten en controleer de accounts die Cloud Sync voorstelt om aan te maken, bij te werken of te deactiveren in het tabblad **Uitvoer** of in het e-mailrapport. Eventuele waarschuwingen of fouten worden weergegeven onder **Waarschuwingen** en **Fouten**. Raadpleeg de [troubleshooting-documentatie](https://docs.zivver.com/nl/admin/cloudsync/troubleshooting.html) voor meer informatie.

12. Als je tevreden bent met de voorgestelde wijzigingen, kun je de eerste synchronisatie uitvoeren. Ga naar het _ZivverCloudSyncLoader_-runbook en klik op **starten**. Voeg de volgende twee parameters toe:

- `perform_sync`: hiermee zorg je dat de synchronisatie niet langer in preview is.  
    - `allow_large_sync`: dit is nodig omdat dit de eerste synchronisatie is. Zonder deze parameter staat Cloud Sync niet toe dat meer dan 10% van de accounts wordt aangemaakt, bijgewerkt of gedeactiveerd.

Optioneel kun je de volgende parameters toevoegen om de synchronisatietaken voor gebruikersmailboxes en gedeelde mailboxes te splitsen. Deze aanpak is bijvoorbeeld handig bij het toepassen van specifieke filters of wanneer je een groot aantal mailboxes hebt en mogelijk tegen het fair use-beleid van Microsoft aanloopt, dat een maximale uitvoeringstijd van 3 uur per taak toestaat.

- `sync_users`: hiermee worden alleen user mailboxes gesynchroniseerd.  
    - `sync_groups`: hiermee worden alleen shared mailboxes gesynchroniseerd.

Klik op starten en de synchronisatie maakt de accounts in Zivver aan en werkt ze bij.

13. Als je tevreden bent met de voorgestelde wijzigingen, kun je het schema inschakelen. Klik in het _ZivverCloudSyncLoader_ runbook op **Koppeling naar planning**.

14. Klik op **Schema** en koppel het runbook aan het _ZivverCloudSyncSchedule_.

15. Klik op **Parameters en uitvoerinstellingen** en voeg de parameter `perform_sync` toe. Klik op OK.

Cloud Sync zal nu automatisch dagelijks draaien. Als je e-mailrapporten hebt ingeschakeld, wordt na elke run een e-mailrapport verzonden.

16. **Aanbevolen**: Als alles succesvol is ingesteld, zijn de _Microsoft Graph Command Line Tools_ niet meer nodig. Je kunt ze verwijderen door naar **Enterprise Applications** te navigeren. Zoek hier de _Microsoft Graph Command Line Tools_ applicatie en controleer of de aanmaakdatum de dag van deze Cloud Sync-setup is (om te verzekeren dat de applicatie niet eerder voor iets anders is aangemaakt). Open de applicatie en verwijder deze.

Laatst bijgewerkt op 2026-07-03
