Exchange 2010 removes unlinked ActiveSync Device from usercontext
getestet unter MS Exchange 2010 SP2 RU 6
Dieses Skript vergleicht die unter CASMailbox in den Feldern ActiveSyncAllowedDeviceIDs & ActiveSyncBlockedDeviceIDs aufgeführten DeviceIDs mit den tatsächlich existenten Geräten von Get-ActiveSyncDevice und löscht nicht verknüpfte Geräte aus dem globalen Kontext.
GeräteIDs werden beim Setzen des Status über die Quarantäne vom Administrator im Benutzerkontext entweder unter ActiveSyncAllowedDeviceIDs oder ActiveSyncBlockedDeviceIDs in Benutzerkontext der CASMailbox gespeichert. Wenn ein Gerät nun vom Administrator oder vom User über das ECP gelöscht wurde, bleibt der Gerätestatus im Benutzerkontext bestehen und der Administrator erhält bei erneutem Synchronisierungsversuch keine Quarantäne-Meldung. Um unerwünschte Überbleibsel zu entfernen muss man via Set-CASMailbox die Geräte via Management-Shell entfernen, was bei größeren Mengen von Geräten mühselig ist. Um die Arbeit zu automatisieren habe ich das Skript geschrieben. Wenn Sie die Variable autorem im Kopf des Powershell-Skripts auf 1 setzen, ist auch eine automatisierte Anwendung des Skripts z. B. als Task möglich.
Das Skript verwendet die folgenden Exchange-CMDlets:
Es listet zuerst die Benutzer des Exchange-Server auf und legt die Namen in ein Array
Das Array wird anschließend durchlaufen.
Der Inhalt der CASMailbox des Benutzers wird abgefragt.
Es wird geprüft ob im Feld ActiveSyncAllowedDeviceIDs Daten vorliegen.
Falls ja, wird nun geprüft ob die DeviceID mit dem CMDlet ActiveSyncDevice abgerufen werden kann, falls nicht wird es vorläufig als "zu löschen" markiert.
Wird die Partnerschaft aber bestätigt wird der Marker entfernt und die Schleife wird unterbrochen.
Wenn die Schleife komplett durchläuft und keine Partnerschaft gefunden wurde, wird das Gerät mit ID und weiteren Informationen in ein "Lösch"-Array gelegt.
Die gleiche Prozedur wird für das Feld ActiveSyncBlockedDeviceIDs wiederholt.
Wenn sich im Löscharray nicht befindet wird das Skript mit der Meldung das nichts gefunden wurde beendet, falls etwas in dem Array liegt wird eine Bestätigung des Löschens vom Benutzer erwartet (es sei denn, die Variable autorem hat den Wert 1).
Das Skript löscht die Geräte nun vom Benutzerkontext (CASMailbox).
Anwendung des Skripts
Laden Sie das Skript als ZIP-Archiv herunter (siehe Ende des Textes)
Vor der Extraktion klicken Sie mit der rechten Maustaste auf das ZIP-Archiv und wählen "Eigenschaften".
Klicken Sie dann auf den Button "Zulassen". INFO: Hierdurch wird die Internetzonen-Beschränkung aufgehoben und Sie werden beim Ausführen der Datei nicht nochmal auf das evtl. Gefährdungspotenzial von ausführbaren Dateien hingewiesen
Extrahieren (!) Sie die beiden Dateien nun in einen beliebigen Ordner
Öffnen Sie die Batchdatei "rem_AD.cmd" auf dem Exchange-Server (Sie müssen als Administrator angemeldet sein (Exchange Administrator)), alternativ können Sie das Skript auch direkt aus der Exchange Management Shell aufrufen (Navigieren Sie hierzu via cd in den entsprechenden Ordner und geben Sie dann ".\rem_AD.ps1" ein.)
Die Batchdatei prüft wo die Exchange-Installation liegt (C:, D:), öffnet dann die Powershell mit Exchange-Modul und startet dann das eigentliche Skript
Es gleicht automatisch die IDs von der CASMailbox mit dem von ActiveSyncDevice ab und gibt dann die Geräte aus, die nicht verlinkt sind.
Falls keine Geräte den Kriterien entsprechen erscheint folgende Meldung:
Nachdem Sie die Auswahl bestätigt haben, löscht das Skript die angezeigten Geräte.
automatisierte Verwendung z.B. als Task Sie können das Skript auch ohne Benutzereingriffe anwenden, hierzu ändern Sie im Kopf des Powershell-Skripts den Wert von autorem auf "1". Anschließend werden beim Start des Skripts keine Bestätigungen mehr verlangt.
Das Skript habe ich auf meinem Exchange-Server (2010 SP2 RU6) ausgiebig getestet und konnte keine Fehler feststellen. Sollten Sie Fehler feststellen oder Wünsche haben schreiben Sie mir bitte einen Kommentar. Sollten Sie das Skript erfolgreich (oder auch nicht erfolgreich) auf einer neueren Exchange-Umgebung getestet haben, würde ich mich über Feedback via Commentbox freuen.
Thomas Windscheif arbeitet bei excITe Consulting und ist langjähriger Berater im Bereich IT-Infrastruktur und Groupware. Sowohl Kleinunternehmen z. B. im Handwerk als auch der größere fertigende Mittelstand gehören zu seinem Projektumfeld. Im Wesentlichen gehören die Planung von Infrastruktur-Migrationen (Novell/Micro Focus, Microsoft), Cloud-Lösungen (Office365), Groupware-Umgebungen (z. B. Exchange) und deren Umsetzung zu seinen Aufgaben. Neues begeistert ihn aber ebenso und so unterstützt Thomas Windscheif auch bei themenfremden IT-Systemen, überall da wo er helfen kann.
Sein Ziel: Die Mehrwerte der heutigen IT-Lösungen für einfacheres und modernes Arbeiten beim Kunden einbringen.
Login
Sie haben ein ungelöstes Problem in Ihrer Exchange Server oder Microsoft-Infrastruktur? Treten Sie gerne mit mir in Kontakt.
Sowohl bei einfachen Exchange Installationen, als auch bei hochverfügbaren, lastverteilten Mehrstandort-DAG-Topologien mit Loadbalancern
unterstütze ich Sie -auch kurzfristig- sehr gerne.
- Das Ende der Standardauthentifizierung - Wie bereite ich mein Unternehmen vor? -
Am 01.Oktober.2022 wird Microsoft Standardauthentifizierung zur Anmeldung nicht mehr unterstützen. Immer noch (!) sehe ich viele Kunden die keinen Überblick über die Authentifizierungen an Ihrem Tenant haben. Oftmals sind es Smartphones, welche via ActiveSync und Standardauthentifizierung angebunden sind oder E-Mail-Clients via IMAP/POP3.
Wie man ermittelt welche Benutzer über welche App derzeit via Standardauthentifizierung (Legacy Authentication) zugreift und welche Maßnahmen zur Deaktivierung von Standardauthentifizierung vornehmen kann. Habe ich in dem folgenden Artikel zusammengefasst: