In vielen Unternehmen gehören Verbindungen zwischen mobilen Geräten und einem Exchange Mailpostfach über die ActiveSync Funktion schon zum Alltag.
Wie sieht das ganze jedoch aus, wenn ich nicht jedem Exchange Benutzer auch einen ActiveSync Zugang ermöglichen möchte oder nur einer bestimmten Gruppe oder Abteilung.
Eine direkte Steuerung von ActiveSync über das ActiveDirectory gibt es nicht. ActiveSync ist als Standardwert für alle neu erstellten Benutzer aktiv und muss separat deaktiviert werden.
Es gibt aber eine Möglichkeit das ganze unter Exchange Servers 2010 und höher über die AD-Gruppen zu steuern.
Mit Powershell zum Erfolg – ActiveSync Funktion steuern
Abhilfe schafft hier ein PowerShell Script, welches als geplanter Task täglich zu einer bestimmten Uhrzeit auf dem Exchange-Server läuft.
Das Script sollte, wenn möglich nachts laufen, da hier zuerst bei allen Benutzern im ActiveDirectory die ActiveSync Funktion deaktiviert und dann nur noch für die jeweiligen Gruppenmitgliedern aktiviert wird. Während dieser Zeit kann also keine Synchronisation zu den Mobilen Geräten stattfinden.
Das Script hat folgenden Aufbau.
#ActiveSync für alle Benutzer deaktivieren Get-User -ResultSize Unlimited | Set-CASMailbox –ActiveSyncEnabled $false #Alle Mitglieder der AD Gruppe zu einer Variable hinzufügen $allMembers = Get-DistributionGroupMember -Identity "AD-Gruppe_ActiveSync_Aktiv" #Loop mit Array foreach ($member in $allMembers) { #ActiveSync für jeden User im Array aktivieren $member | Set-CASMailbox –ActiveSyncEnabled $true }
Gespeichert wird das Ganze als *.ps1 Datei. Der geplanten Task muss auf dem Exchange Server eingerichtet werden, da hierzu die Exchange Powershell Erweiterung notwendig ist.
Als Pfad zur Ausführung des Geplanten Tasks wir die Powershell Datei angegeben.
Der Standardpfad ist hier „C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe“
Als Parameter (Argrument) wird hier noch die Remote Ausführung vom Exchange Server, als auch unser erstelltes Script eingebunden
-command „. ‘C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1′; Connect-ExchangeServer -auto; C:\skripte\Enable_ActiveSync.ps1„
Nun sollte das Powershell Script nach Vorgabe laufen und täglich die ActiveSync Funktion je nach Gruppenmitgliedschaft aktivieren oder deaktiviert lassen.
!Achtung!
Damit die Ausführung des eigenen Scripts auch erfolgreich möglich ist, muss die Execution Policy in Powershell angepasst werden.
Dies kann unter anderem einmalig mittels „Set-ExecutionPolicy -ExecutionPolicy unrestricted“ erfolgen.
Herzlichen Dank für den informativen Artikel!
Sehr schön Blog.