Von einem Hybrid-Szenario spricht man, wenn zwei Identitäts-Quellen miteinander verbunden werden. Das wohl bekannteste Szenario ist sicher, wenn das On-Premise Active Directory mithilfe von Azure-AD-Connect mit Microsofts Azure und/oder Office 365 verbunden wird.
Hierbei gilt, dass es nur ein führendes Directory für Identitäten geben soll, also in unserem Beispiel Online oder On-Premise.
Die Gründe für ein Hybrid-Szenario sind weitläufig bekannt, ich möchte hier nur das aus meiner Sicht wichtigste nennen: Single-Sign-On. Wenn wir das Thema Exchange Online genauer betrachten, sehen wir dass sehr viele Kunden Azure-AD-Connect im Einsatz haben, aber es keinen anderen unterstützten Weg gibt Exchange Attribute zu ändern , als über die Exchange Management Konsole.
In letzter Zeit wurde ich immer wieder mit den Fragen konfrontiert:
Wo ändere ich das? Wo wird das angepasst? Welche PowerShell muss ich verwenden?
Deshalb habe ich in diesem Beitrag die gängigsten Befehle und Workflows beschrieben – die die meisten Tasks bedienen sollten.
Table of Contents
Useranlage
Folgende Befehle werden in der On-Premise Umgebung ausgeführt.
1. User im Active Directory Anlegen
2. Exchange On-Premise: Exchange Attribute über die Exchange Management Shell konfigurieren:
Enable-RemoteMailbox remotemailbox@domain.at -RemoteRoutingAddress remotemailbox@<tenantname>.mail.onmicrosoft.com -Alias remotemailbox
Beispiel:
Enable-RemoteMailbox max.muster@detres.it -RemoteRoutingAddress max.muster@detres365.mail.onmicrosoft.com -Alias max.muster
3. User der Active Directory Gruppe zur M365 Lizenzierung (Group-Based-Licensing) hinzufügen
Mailbox-Berechtigungen
Wo liegt die Mailbox? – Online oder am Exchange lokal?
Folgende Befehle werden dort ausgeführt, wo sich die Mailbox gerade befindet.
via ECP (Beispielbild Exchange Online):
via Powershell:
Add-MailboxPermission -Identity <User der berechtigt werden soll> -User <Zielmailbox die berechtigt wird> -AccessRights FullAccess -InheritanceType All -AutoMapping $true
Beispiel:
Add-MailboxPermission -Identity Max.Muster -User office@detres.it -AccessRights FullAccess -InheritanceType All -AutoMapping $true
Übersicht der Berechtigungen:
https://docs.microsoft.com/en-us/exchange/recipients/mailbox-permissions?view=exchserver-2019
Shared-Mailbox
Folgende Befehle werden am Exchange On-Prem ausgeführt.
Bestehenden User in eine Shared Mailbox umwandeln
Set-RemoteMailbox remotemailbox@domain.at -Type Shared
Beispiel:
Set-RemoteMailbox domi@detres.it -Type Shared
Neuen Shared Mailbox anlegen
Hier würde ich empfehlen das Userobjekt im Active Directory zuerst anzulegen, den User deaktivieren, und dann die Remote-Mailbox zu aktivieren.
Enable-RemoteMailbox remotemailbox@domain.at -RemoteRoutingAddress remotemailbox@<tenantname>.mail.onmicrosoft.com -Shared -Alias remotemailbox
Beispiel:
Enable-RemoteMailbox max.muster@detres.it -RemoteRoutingAddress max.musterx@detres365.mail.onmicrosoft.com -Shared -Alias max.muster
Alias-Anpassungen
Aliase beziehen sich auf AD-Attribute, deshalb werden alle Befehle am Exchange On-Prem ausgeführt.
via ECP:
via Powershell:
Set-RemoteMailbox "RemoteMailbox" -EmailAddresses @{add="remotemailbox@domain.at"}
Set-RemoteMailbox "RemoteMailbox" -EmailAddresses @{remove="remotemailbox@domain.at"}
Beispiel:
Set-RemoteMailbox "domi@detres.it" -EmailAddresses @{add="domi123@detres.it"}
Set-RemoteMailbox "domi@detres.it" -EmailAddresses @{remove="domi123@detres.it"}
Weiterleitungen
Wo liegt die Mailbox? – Online oder am Exchange lokal?
Folgende Befehle werden dort ausgeführt, wo sich die Mailbox gerade befindet.
via ECP:
via Powershell:
Set-Mailbox -Identity "<RemoteMailbox>" -DeliverToMailboxAndForward $true -ForwardingSMTPAddress <"RemoteMailbox@domain.at">
Beispiel:
Set-Mailbox -Identity "domi@detres.it" -DeliverToMailboxAndForward $true -ForwardingSMTPAddress "office@detres.it"
Ressourcenpostfächer
Folgende Befehle werden am Exchange On-Prem ausgeführt.
Neues Ressourcenpostfach
New-RemoteMailbox <remotemailbox> -RemoteRoutingAddress remotemailbox@<tenantname>.mail.onmicrosoft.com -<Room/Equipment>
Beispiel Equipment:
New-RemoteMailbox dienstwagen@detres.it-RemoteRoutingAddress dienstwagen@detres365.mail.onmicrosoft.com -Equipment
Beispiel Raum:
New-RemoteMailbox besprechungsraum@detres.it-RemoteRoutingAddress besprechungsraum@detres365.mail.onmicrosoft.com -Room
Bestehende Mailbox umwandeln
Set-RemoteMailbox <remotemailbox@domain.at> -Room
Set-RemoteMailbox <remotemailbox@domain.at> -Equipment
Wichtig – Standardmäßig wird in der O365 Ressource der Betreff des Termins durch den Organisator ersetzt – das kann durch folgenden Befehl welcher dort ausgeführt wird wo sich die Mailbox befindet angepasst werden:
Get-Mailbox | Where-Object {$_.ResourceType -eq "Room" -or $_.ResourceType -eq "Equipment"} | Set-CalendarProcessing -DeleteSubject $False -AddOrganizerToSubject $True
Standardberechtigungen setzen
Wo liegt die Mailbox? – Online oder am Exchange lokal?
Folgende Befehle werden dort ausgeführt, wo sich die Mailbox gerade befindet.
Set-MailboxFolderPermission -Identity ressource@domain.at:\Calendar -User Standard -AccessRights LimitedDetails
Set-MailboxFolderPermission -Identity ressource@domain.at:\Kalender -User Standard -AccessRights LimitedDetails
Beispiel englische Mailbox:
Set-MailboxFolderPermission -Identity besprechungsraum@detres.it:\Calendar -User Standard -AccessRights LimitedDetails
Information
Ressourcenpostfächer werden im lokalen ECP unter „User-Postfächern“ angezeigt und nicht unter Ressourcen. Das ist ein normales Verhalten, da diese Postfächer in der Beschreibung als „Remoteraumpostfach“ angezeigt werden.
Useraustritt
Der Useraustritt kann je nach Anforderungen unterschiedlich sein. Als grundlegende Schritte würde ich empfehlen:
- User im AD zu deaktivieren
- Usermailbox zu konvertieren –> Shared Mailbox
- Entfernung der O365 Lizenzen
Out of Office Reply
Wo liegt die Mailbox? – Online oder am Exchange lokal?
Folgende Befehle werden dort ausgeführt, wo sich die Mailbox gerade befindet.
via ECP:
via Powershell:
Get-Mailbox -Identity mailbox@domain.at | Set-MailboxAutoReplyConfiguration -AutoReplyState Scheduled -StartTime "12/18/2019 08:00:00" -EndTime "01/06/2020 23:59:59" -InternalMessage "Ihre Nachricht" -ExternalMessage "Ihre Nachricht" -ExternalAudience All
Get-Mailbox -Identity domi@detres.it | Set-MailboxAutoReplyConfiguration -AutoReplyState Scheduled -StartTime "12/18/2022 08:00:00" -EndTime "12/24/2022 23:59:59" -InternalMessage "Ihre Nachricht" -ExternalMessage "Ihre Nachricht" -ExternalAudience All
Wichtig: Hier gilt ein Zeitversatz von einer Stunde. UTC-Zeitformat wird angenommen. Achtung bei Sommer & Winterzeit.
bei Sommerzeit gilt ein Zeitversatz von zwei Stunden.
Super Beitrag! Vielen Dank!
Konnte ich direkt in meinem Unternehmen 1:1 umsetzen 🙂