Doelgroep: IT van de klant, Exchange-beheerder, Azure-/Entra ID-beheerder, informatiebeveiligingsfunctionaris
Reservation Sync heeft een ruimtepostvak nodig voor elke ruimte die u wilt synchroniseren, een ruimtelijst en toestemming om via de Microsoft Graph API toegang te krijgen tot deze ruimtepostvakken. In deze handleiding wordt uitgelegd hoe u dit instelt in Exchange Online en in de Azure-portal (Microsoft Entra ID).
- 1. Verbinding maken met Exchange
- 2. Ruimtepostvakken maken
- 3. Een ruimtelijst maken
- 4. Reservation Sync registreren in Azure
- 5. De aanmeldgegevens delen met Spacewell
- Handige koppelingen
1. Verbinding maken met Exchange
Met de volgende stappen implementeert en/of valideert u instellingen in Microsoft Exchange Online die vereist zijn voor de Reservation Sync-interface om verbinding te maken met Spacewell Workplace.
Informatie
Voor de volgende stappen is beheerderstoegang tot Exchange Online vereist. Zorg ervoor dat uw Microsoft-account over de benodigde toegangsrechten beschikt.
1.1. Exchange-beheercentrum
Het Exchange-beheercentrum (EAC) is de webconsole voor Exchange Online: https://admin.exchange.microsoft.com/
Meer informatie over EAC vindt u hier: https://learn.microsoft.com/en-us/exchange/exchange-admin-center.
1.2. Exchange Online PowerShell
U hebt PowerShell en internettoegang nodig. Start Windows PowerShell als beheerder en voer het volgende uit:
Set-ExecutionPolicy RemoteSignedBevestig met [Y] Yes.
Installeer vervolgens de Exchange Online PowerShell-module en bevestig met [Y] Yes:
Install-Module -Name ExchangeOnlineManagementMet deze opdracht wordt de Exchange Online PowerShell-module gedownload en geïnstalleerd. Bevestig met [Y] Yes en druk vervolgens op Enter.
Maak verbinding met uw eigen beheerdersaccount en meld u aan (en keur de aanvraag goed in Microsoft Authenticator als 2FA is ingeschakeld):
Connect-ExchangeOnline -UserPrincipalName johnsmith@contoso.onmicrosoft.comDe pop-up van Microsoft “Sign in to your account” verschijnt:
Voer het wachtwoord van de beheerder in en bevestig met Enter.
Informatie
Als 2FA is ingeschakeld, moet u de aanvraag bevestigen in de Microsoft Authenticator-app.
In PowerShell wordt het volgende scherm weergegeven en is de gebruiker aangemeld bij Exchange Online PowerShell:
Controleer het domein:
Get-AcceptedDomainVerbreek de verbinding wanneer u klaar bent:
Disconnect-ExchangeOnlineMeer informatie over verbinding maken met Exchange Online PowerShell vindt u hier: https://learn.microsoft.com/en-us/powershell/exchange/connect-to-exchange-online-powershell?view=exchange-ps&preserve-view=true
2. Ruimtepostvakken maken
Elke reserveerbare ruimte in Workplace heeft een overeenkomend ruimtepostvak in Exchange nodig. Ruimtepostvakken zijn resourcepostvakken: ze hebben geen Microsoft 365-licentie nodig, kosten niets en u kunt er zoveel maken als u nodig hebt.
Ruimtepostvakken kunnen handmatig worden gemaakt via het Exchange-beheercentrum of met PowerShell. Beide opties worden hieronder beschreven. Selecteer de methode die het beste aansluit bij uw huidige werkwijze.
Optie A: een ruimtepostvak maken via het Exchange-beheercentrum
Meld u aan bij het Exchange-beheercentrum, ga naar Ontvangers > Resources en klik op Een ruimte-resource toevoegen.
Er wordt een dialoogvenster geopend voor de parameters van het nieuwe ruimtepostvak. Voer een naam en e-mailadres in en klik op Volgende.
Optioneel: vul extra eigenschappen in (capaciteit, locatie enzovoort). Reservation Sync heeft deze niet nodig, maar ze helpen gebruikers de juiste ruimte te vinden in Outlook Room Finder (zie Room Finder Add-in for Outlook).
Boekingsopties: laat de standaardwaarden staan of stem ze af op de ruimteconfiguratie in Asset. Zie sectie 2.1 hieronder.
Controleer de geconfigureerde eigenschappen van het ruimtepostvak en klik op Maken. De ruimte verschijnt in de lijst met resources.
Nadat het ruimtepostvak is gemaakt, kunt u het ruimtepostvak bekijken in de lijst met Resources:
Optie B: een ruimtepostvak maken via de Exchange-beheershell (PowerShell)
Maak verbinding met de Exchange-beheershell en voer de onderstaande opdracht uit om een nieuw ruimtepostvak te maken:
New-Mailbox -Name "Conference Room" -alias conf_room -Room- Met de parameter -Name stelt u de weergavenaam van de ruimte in Outlook en Teams in.
- Met de parameter -alias wordt het e-mailadres gegenereerd, bijvoorbeeld conf_room@yourdomain.com in het bovenstaande geval.
- De parameter -Room is het belangrijkst: hiermee wordt aangegeven dat het om een resourcepostvak voor een ruimte gaat en niet om een gebruikersaccount.
Controleer het resultaat:
Get-Mailbox -Identity conf_roomDe waarde van de parameter -Identity is dezelfde als de -alias die in de bovenstaande maakopdracht is gebruikt.
2.1. Instellingen voor ruimte-reserveringen afstemmen op Workplace
Ruimtepostvakken accepteren of weigeren vergaderverzoeken automatisch op basis van hun instellingen voor agendaverwerking. Deze instellingen hebben rechtstreeks invloed op Reservation Sync en moeten overeenkomen met de ruimte-instellingen in Asset.
De parameter -Identity is de alias van het ruimtepostvak. U kunt hier ook het e-mailadres gebruiken (conf_room of conf_room@yourdomain.com).
Met de optie format-list zorgt u ervoor dat PowerShell de uitgebreide lijst met eigenschappen van het ruimtepostvak weergeeft:
Opmerking
Het is belangrijk dat de instellingen in Exchange overeenkomen met de instellingen in Asset. Voorbeeld: als BookingWindowInDays in Exchange 180 is, maar de ruimte in Asset tot 2 jaar vooruit kan worden geboekt, worden reserveringen die in Asset meer dan 180 dagen vooruit zijn gemaakt niet gesynchroniseerd met Exchange.
Hoewel sommige van deze eigenschappen kunnen worden beheerd vanuit het Exchange-beheercentrum, kunt u geavanceerdere configuratie uitvoeren vanuit de Exchange-beheershell met de opdracht CalendarProcessing .
Bekijk de huidige instellingen van een ruimte (alias of e-mailadres):
Get-CalendarProcessing -Identity conf_room | format-list
| Instelling | Wat de instelling doet | Aanbeveling |
|---|---|---|
| AutomateProcessing | Of verzoeken automatisch worden geaccepteerd of naar een ruimtegedelegeerde worden doorgestuurd | AutoAccept, tenzij boekingsgedelegeerden zijn geconfigureerd |
| BookingWindowInDays | Hoe ver vooruit de ruimte kan worden geboekt (standaard 180) | Hetzelfde als in Workplace |
| ConflictPercentageAllowed | Of een terugkerende reeks wordt geaccepteerd wanneer sommige exemplaren conflicteren. Bij 0% wordt de reeks geweigerd als één exemplaar conflicteert | Stel dit bewust in om situaties te voorkomen waarin de systemen niet meer synchroon lopen |
| AllowConflicts | Of de ruimte een verzoek accepteert dat een andere reservering overlapt | False. Als dit True is, accepteert de ruimte elk verzoek en ontstaan dubbele reserveringen; reconciliatie corrigeert deze niet, maar rapporteert ze alleen |
| DeleteSubject, AddOrganizerToSubject | De ruimte verwijdert standaard het onderwerp; Workplace toont dan de naam van de organisator | Stel beide in op False als onderwerpen in Workplace moeten worden weergegeven |
| RemovePrivateProperty | Standaard (True) wordt de markering "Privé" verwijderd uit binnenkomende vergaderingen | Stel dit in op False zodat privévergaderingen die in Workplace zijn gemaakt, privé blijven in Outlook |
Onderwerpen weergeven in Workplace:
Set-CalendarProcessing -Identity conf_room -DeleteSubject $False -AddOrganizerToSubject $FalseControleer de wijziging door de opdracht Get-CalendarProcessing voor de betreffende vergaderruimte opnieuw uit te voeren.
Privévergaderingen privé houden:
Set-CalendarProcessing -Identity conf_room -RemovePrivateProperty $False
Voer Get-CalendarProcessing opnieuw uit om dit te controleren. Alle eigenschappen worden beschreven op https://learn.microsoft.com/en-us/powershell/module/exchange/set-calendarprocessing?view=exchange-ps
3. Een ruimtelijst maken
Ruimtelijsten groeperen ruimtepostvakken. Het zijn geen distributielijsten, gedeelde postvakken of beveiligingsgroepen. Reservation Sync gebruikt ze om ruimtepostvakken te koppelen aan reserveerbare ruimtes in Asset, en Outlook Room Finder gebruikt ze om ruimtes te groeperen.
Opmerking
Reservation Sync heeft minimaal één zichtbare ruimtelijst nodig.
Ruimtegegevens die met PowerShell zijn gemaakt, kunnen afhankelijk van de Azure-regio 24–48 uur nodig hebben voordat ze in de Graph API worden weergegeven.
Een ruimtelijst maken
New-DistributionGroup -Name "All Rooms" -Alias all_rooms -RoomList- Met de parameter -Name geeft u de weergavenaam van de ruimtelijst in Outlook Room Finder op.
- Met de parameter -Alias wordt het e-mailadres gegenereerd dat door Reservation Sync wordt gebruikt.
- Met de parameter -RoomList wordt deze groep geïdentificeerd als ruimtelijst.
Meer informatie over ruimtelijsten vindt u hier: https://learn.microsoft.com/en-us/powershell/module/exchange/new-distributiongroup?view=exchange-ps
Een ruimte aan de lijst toevoegen
Add-DistributionGroupMember -Identity all_rooms -Member conf_room- De parameter -Identity is de alias of het e-mailadres van de ruimtelijst.
- De parameter -Member is de alias of het e-mailadres van het ruimtepostvak. Dit kan ook een andere ruimtelijst zijn.
Voer de onderstaande opdracht uit om te controleren of het lid is toegevoegd:
Get-DistributionGroupMember -Identity all_rooms
Een ruimte uit de lijst verwijderen
Remove-DistributionGroupMember -Identity all_rooms -Member conf_room
Alle ruimtelijsten weergeven
Get-DistributionGroup -ResultSize Unlimited | Where {$_.RecipientTypeDetails -eq "RoomList"} | Format-Table DisplayName,Identity,PrimarySmtpAddress –AutoSize - De parameter -ResultSize Unlimited zorgt ervoor dat alle ruimtelijsten worden geretourneerd.
- De component Where filtert de lijst zodat alleen ruimtelijsten en geen andere typen groepen worden weergegeven.
- Met Format-Table wordt de uitvoer opgemaakt als een tabel met 3 kolommen: DisplayName, Identity en e-mailadres
De parameter -AutoSize past de kolombreedtes in de uitvoer aan de gegevens aan.
De ruimtes in een ruimtelijst weergeven
Gebruik de onderstaande opdracht om alle leden en ruimtelijsten voor een bepaalde ruimtelijst weer te geven:
Get-DistributionGroupMember -Identity all_rooms -ResultSize Unlimited | Format-Table DisplayName,Identity,PrimarySmtpAddress –AutoSize De parameter -Identity is de alias van de ruimtelijst waarvan de leden moeten worden opgehaald.
4. Reservation Sync registreren in Azure
Reservation Sync maakt verbinding met Exchange Online via Microsoft Graph, de standaard-API van Microsoft die Exchange Web Services (EWS) vervangt. Hierbij worden OData REST-API's en OAuth 2.0-clientreferenties gebruikt. Er zijn beheerdersrechten in Azure AD / Entra ID nodig.
4.1 De app registreren
Meld u aan bij de Azure-portal en open Microsoft Entra ID > App-registraties.
Selecteer op de pagina App-registraties de optie Nieuwe registratie:
Voer een naam in. Laat Alleen accounts in deze organisatiemap geselecteerd. Laat de omleidings-URI leeg. Klik op Registreren.
Kopieer op de overzichtspagina de Toepassings-id (client) en de Map-id (tenant) en bewaar deze veilig.
Informatie
Dit is een achtergrondapp. Deze verschijnt niet onder Mijn apps in Office 365 of Teams en hoeft niet aan gebruikers of groepen te worden toegewezen.
4.2 Een clientgeheim genereren
De volgende stap is het genereren van een clientgeheim voor API-toegang.
Open in de app Certificaten en geheimen > Nieuw clientgeheim.
Voer een beschrijving en een vervalperiode in overeenkomstig het beleid van uw organisatie. Klik op Toevoegen.
Kopieer de Waarde en de vervaldatum bij Verloopt op en bewaar deze veilig. Deze informatie is nodig voor een toekomstige configuratiestap.
Informatie
Wanneer het geheim verloopt, stopt de synchronisatie en worden ruimtekoppelingen uitgeschakeld. Vernieuw het op tijd en deel het nieuwe geheim met Spacewell.
4.3 API-machtigingen verlenen
Open API-machtigingen > Een machtiging toevoegen > Microsoft Graph > Toepassingsmachtigingen.
Voeg deze machtigingen toe en klik vervolgens op Machtigingen toevoegen:
- Calendars.Read
- Calendars.ReadBasic.All
- Calendars.ReadWrite
- MailboxSettings.Read
- Place.Read.All
Informatie
Deze machtigingen geven toegang tot basisgegevens van vergaderingen: planning, organisator, deelnemers en onderwerp. Ze geven geen toegang tot de inhoud van de vergadering, bijlagen of de beschikbaarheidsinformatie van gebruikers.
U kunt de toegevoegde machtigingen nu bekijken in de lijst met Geconfigureerde machtigingen voor de app in het middelste deelvenster:
Meer informatie over app-machtigingen vindt u hier: https://learn.microsoft.com/en-us/graph/auth-v2-service
Tijdzones (alleen voor Outlook 2013 of ouder). Reservation Sync maakt vergaderingen in UTC en werkt deze bij in UTC. Moderne versies van Outlook en Teams tonen tijden in de eigen tijdzone van elke gebruiker; Outlook 2013 en ouder tonen UTC. Met MailboxSettings.Read kan Reservation Sync de voorkeurstijdzone van de organisator lezen.
4.4. Toegang alleen tot ruimtepostvakken beperken
Opmerking
Een beveiligingsgroep kan worden gebruikt om de toegang tot gebruikers en resources te beperken. Voor de Reservation Sync-interface moet u een beveiligingsgroep maken en alle ruimteresources aan deze groep toevoegen.
Maak een beveiligingsgroep met e-mailfunctie voor de ruimtes:
New-DistributionGroup -Name "Only Rooms Security Group" -Alias all_rooms_sg -Type security- Met de parameter -Type security definieert u deze groep als een beveiligingsgroep met e-mailfunctie.
- Met de parameter -Alias definieert u het e-mailadres van de groep.
Voeg elke ruimte binnen het bereik toe:
Add-DistributionGroupMember -Identity all_rooms_sg -Member conf_room- De parameter -Identity is de alias van de beveiligingsgroep.
- De parameter -Member is de alias van het ruimtepostvak.
Maak het toegangsbeleid. Gebruik de toepassings-id (client) uit 4.1 en het e-mailadres van de beveiligingsgroep:
New-ApplicationAccessPolicy -AppId 5002196d-7934-4f85-98ed-d65a0f249aff -PolicyScopeGroupId all_rooms_sg@spacewelltest.onmicrosoft.com -AccessRight RestrictAccess -Description "Restrict Reservation Sync Interface to Room mailboxes"De parameter -AccessRight RestrictAccess zorgt ervoor dat de toegang beperkend is en beperkt blijft tot het beleidsbereik.
Meer informatie over het API-toegangsbeleid vindt u hier:
https://learn.microsoft.com/en-us/graph/auth-limit-mailbox-access
Opmerking
Vergeet niet om nieuwe ruimtes zowel aan deze beveiligingsgroep als aan de ruimtelijst toe te voegen.
4.5 Beheerderstoestemming verlenen
De agendagegevens die met deze machtigingen worden verwerkt, zijn persoonsgegevens volgens de AVG van de EU. Hiervoor is normaal gesproken toestemming van de gebruiker vereist. Omdat Reservation Sync een achtergrondapp is, geeft een beheerder namens alle gebruikers één keer toestemming. Microsoft Graph vereist deze toestemming voordat de API kan worden gebruikt.
In API-machtigingen geven de kolommen “Toestemming van beheerder vereist” en “Status” een waarschuwing weer.
Klik op Beheerderstoestemming verlenen voor <organisatienaam> en bevestig met Ja.
De status verandert voor elke machtiging in verleend.
5. De aanmeldgegevens delen met Spacewell
| Wat | Waar u het hebt gevonden |
|---|---|
| Toepassings-id | Toepassings-id (client), stap 4.1 |
| Map-id | Map-id (tenant), stap 4.1 |
| Clientgeheim | Stap 4.2 |
| Vervaldatum clientgeheim | Stap 4.2 |
| E-maildomeinen | Uw e-maildomein(en), bijvoorbeeld spacewell.com |
Deel het clientgeheim veilig, bijvoorbeeld via een eenmalige koppeling die verloopt (bijvoorbeeld Onetime Secret): voer het geheim, een wachtwoordzin en een geldigheidsduur in, maak de koppeling en stuur de koppeling, de wachtwoordzin en de overige gegevens naar de Spacewell-consultant, met de naam van uw organisatie en de toepassings-id in het onderwerp. Als de koppeling al is gebruikt wanneer de Spacewell-consultant deze opent, wordt u gevraagd het geheim te verwijderen en een nieuw geheim te maken. U kunt elk ander beveiligd kanaal gebruiken dat binnen uw beleid past.
Handige koppelingen
- Door Microsoft ondersteunde scenario's met betrekking tot hybride configuraties: https://techcommunity.microsoft.com/t5/exchange-team-blog/the-end-of-the-rest-api-for-on-premises-mailboxes-preview/ba-p/3221219
- Naslagdocumentatie voor cmdlets van de Exchange-beheershell https://learn.microsoft.com/en-us/powershell/module/exchange/?view=exchange-ps
- https://learn.microsoft.com/en-us/graph/api/overview?view=graph-rest-1.0
- https://learn.microsoft.com/en-us/graph/auth/?context=graph%2Fapi%2F1.0&view=graph-rest-1.0