Serverseitige vs. clientseitige Posteingangsregeln
Bevor wir uns aber mit der Verwaltung von Posteingangsregeln befassen, eine kurze Erklärung. Es gibt zwei Arten von Posteingangsregeln: serverseitige und clientseitige (Nur-Client-Regeln).
Serverseitige Posteingangsregeln werden auf Serverebene ausgeführt. Dies bedeutet, dass sie unabhängig davon funktionieren, ob Outlook ein- oder ausgeschaltet ist. In diesem Sinne ähneln sie Nachrichtenflussregeln. Sie haben jedoch weniger Bedingungen, Ausnahmen und Aktionen zur Auswahl. Außerdem werden Nachrichtenflussregeln während der Übertragung einer E-Mail angewendet und nicht pro Postfach eingerichtet. Obwohl diese Regeln vielseitiger sind, einige Dinge können sie nicht tun. Und hier sind Posteingangsregeln hilfreich.
Clientseitige oder Nur-Client-Posteingangsregeln gelten ausschließlich für Outlook für Windows. Früher waren Sie auch in Outlook für Mac verfügbar, aber seit der Einführung des „neuen Outlook für Mac“ im Oktober 2020 wurden sie eingestellt. Die grundlegenden Informationen zu diesen Regeln werden online im Postfach auf dem Exchange Server gespeichert. Diese Regeln selbst werden jedoch vom E-Mail-Client (d. h. von Ihrem „Desktop-Outlook“) ausgeführt. Wenn Sie also eine neue E-Mail in Ihrem Postfach erhalten, während Outlook deaktiviert ist, werden clientseitige Posteingangsregeln nicht ausgeführt.
Dieser Unterschied hat in den meisten Fällen nur geringe Auswirkungen auf den Benutzer. Aus Sicht des Administrators ist er aber kritisch. Warum? Denn während Sie mit PowerShell jede clientseitige Regel jedes Benutzers auflisten können, können Sie auf diese Weise keine Nur-Client-Regel erstellen. Darüber hinaus, wenn Sie einige PowerShell-Cmdlets verwenden, entfernen sie dadurch deaktivierte clientseitige Regeln und ausgehende Regeln. Diese „destruktiven Cmdlets“ sind:
- New-InboxRule
- Set-InboxRule
- Remove-InboxRule
- Enable-InboxRule
- Disable-InboxRule
Die Verwendung eines dieser Cmdlets kann sorgfältig erstellte benutzerdefinierte Outlook-Regeln zerstören. Das einzige sichere Cmdlet ist Get-InboxRule, mit dem Sie alle Regeln anzeigen können, die für ein bestimmtes Postfach gelten.
Jetzt der schwierige Teil: Eine Regel kann entweder wegen einer Bedingung oder auch wegen einer Aktion clientseitig werden. Wie Sie gleich sehen werden, kann es manchmal schwierig sein, herauszufinden, ob Sie mit einer Nur-Client- oder einer serverseitigen Regeln zu tun haben.
Regeltyp checken
Wenn Sie Outlook oder Outlook im Web nutzen, ist es sehr einfach, den Typ einer Regel zu finden. Outlook für Windows fügt diese Information (Nur-Client) zu jeder solchen Regeln hinzu:
Outlook im Web zeigt eine ziemlich ausführliche Warnung an:
Diese Microsoft-Seite listet die Bedingungen und Aktionen auf, die eine Nur-Client-Regel machen. Beachten Sie jedoch, dass die folgenden Bedingungen:
- mit bestimmten Wörtern im Betreff,
- als wichtig markiert,
- als vertraulich markiert,
- mit bestimmten Wörtern im Nachrichtentext,
- mit bestimmten Wörtern im Nachrichtenheader,
- mit bestimmten Wörtern in der Adresse des Empfängers,
- mit bestimmten Wörtern in der Adresse des Absenders,
- zu Kategorie zugewiesen,
und Aktionen:
- der Kategorie zuordnen,
- als gelesen markieren,
können mithilfe bestimmter Parameter auf das Cmdlet New-InboxRule angewendet werden, das zum Erstellen einer serverseitigen Regel dient.
Tests zeigen, dass, wenn Sie eine Posteingangsregel erstellen, um E-Mails als gelesen in Outlook zu markieren, ist diese Regel clientseitig. Wenn Sie jedoch dieselbe Posteingangsregel in Microsoft 365 mit PowerShell erstellen, ist sie serverseitig. Hoffentlich klärt dies die Sache auf.
Microsoft 365-Posteingangsregeln mit PowerShell exportieren
Es gibt mindestens zwei Szenarien, wo es nützlich sein kann, Microsoft 365-Posteingangsregeln Ihrer Benutzer zu exportieren:
- Wenn Sie sich entscheiden, diese Regeln mit PowerShell zu verwalten (wodurch, wie bereits erwähnt, einige der benutzerdefinierten Regeln gelöscht werden können).
- Wenn Sie jemals Posteingangsregeln für Ihre Benutzer beheben müssen.
Sie können Posteingangsregeln manuell in eine RWZ-Datei exportieren, indem Sie in Outlook auf Regeln > Regeln und Benachrichtigungen verwalten > Optionen gehen. Der Vorteil ist, dass diese Regeln leicht wieder in Outlook importiert werden können, sollte etwas schief gehen. Der Nachteil – ein Administrator müsste sich entweder in jedes Postfach einloggen und den Export manuell durchführen oder diese Aufgabe an die Benutzer delegieren.
Sie können auch Posteingangsregeln mit PowerShell exportieren. Der Hauptvorteil besteht darin, dass Sie dies in Sekundenschnelle erledigen (zzgl. der Zeit, die PowerShell zum Ausführen der Aufgabe braucht). Es gibt aber auch Nachteile: Sie erhalten kein Gesamtbild der clientseitigen Regeln und es gibt keine einfache Importfunktion. Wenn Sie aber einige Fehler bei Posteingangsregeln eines Benutzers zu beheben haben, macht es jedoch einen großen Unterschied, wenn Ihnen begrenzte Verlaufsdaten oder absolut keine Daten zur Verfügung stehen.
Das folgende kurze Skript exportiert eine Liste aller Posteingangsregeln aus jedem Postfach in der Organisation. Die Ergebnisse werden in getrennte CSV-Dateien exportiert, eine für jedes Postfach:
$mailboxes = get-mailbox
foreach ($mailbox in $mailboxes) {get-InboxRule -Mailbox $mailbox.UserPrincipalName | export-csv "C:\$mailbox.csv"}
Mehr über Posteingangsregeln erfahren
Mit Get-InboxRule sehen Sie, wie viele Regeln ein Unternehmen verwendet. Sie können beispielsweise anzeigen, wie viele Regeln ein Benutzer konfiguriert hat:
$mailboxes = Get-Mailbox foreach ($mailbox in $mailboxes) { Write-Output $mailbox.id,((Get-InboxRule -Mailbox $mailbox.Id)|Measure-Object|select count) }
Aus dem Ergebnis können Sie Folgendes erfahren:
- Sie können Posteingangsregeln in Ihrem Microsoft 365-Tenant verwalten, da die meisten Benutzer keine Regeln konfiguriert haben, oder
- wenn Sie einige Regel mit PowerShell bearbeiten, kann dies manche Postfächer beeinträchtigen, da für sie Hunderte von Regeln konfiguriert sind.
Sie können auch nach bestimmten Regeln suchen. Zum Beispiel nach Posteingangsregeln, die E-Mails weiterleiten:
foreach ($mailbox in $mailboxes) { Get-InboxRule -Mailbox $mailbox.UserPrincipalName | where ForwardTo; Get-InboxRule -Mailbox $mailbox.UserPrincipalName | where ForwardAsAttachmentTo }
Wenn das Skript Regeln zurückgibt, können Sie Get-InboxRule verwenden, um mehr zu erfahren:
Get-InboxRule -Identity <InboxRuleIdParameter> | FL
Randnotiz: Dies ist nur ein Beispiel. Standardmäßig löst das Erstellen einer Weiterleitungsregel eine sanfte Sicherheitswarnung aus. Sie können diese Einstellung im Microsoft Security & Compliance Center umschalten. Es gibt auch mehrere Möglichkeiten, die automatische Weiterleitung in Exchange Online zu verhindern.
Neue Posteingangsregel für alle erstellen
Wenn Sie Outlook-Regeln mit PowerShell verwalten, hat dies einen großen Vorteil: Sie können schnell und ohne Beteiligung der Benutzer einen Regelsatz für jedes Postfach in Ihrer Organisation erstellen. Überlegen Sie sich dieses Beispiel:
Ihre Kommunikationsabteilung ist zu dem Schluss gekommen, dass Benachrichtigungen die Produktivität lähmen (was sie tatsächlich tun). Eine ständige Flut von Benachrichtigungen kann die meisten Menschen vollkommen defokussieren. Sie können dies vermeiden, indem Sie alle eingehenden E-Mails automatisch als gelesen markieren. Wenn Sie zusätzlich die „Inbox 0“-Methode einsetzen, verhindern Sie dadurch, dass Benutzer deren Posteingang alle 15 Sekunden überprüfen, wenn E-Mails mit niedriger Priorität eingehen. Dies kann den Benutzern auch helfen dabei, selbstbewusster zu werden und mit der Gewohnheit zu brechen, immer wieder in Posteingang zu schauen.
Ihre Aufgabe ist es, eine solche Regel für alle Postfächer im Unternehmen einzuführen. Sie können dies mit ein paar einfachen Zeilen PowerShell-Code tun. Um die Sache interessanter zu machen, fügen wir eine Ausnahme hinzu: Eine E-Mail sollte nicht automatisch als gelesen markiert werden, wenn die Nachricht vom CEO stammt oder wenn sie als Hohe Priorität markiert wurde. Der Code lautet wie folgt:
$mailboxes = get-mailbox foreach ($mailbox in $mailboxes) { New-InboxRule -Mailbox $mailbox.UserPrincipalName -Name "Mark all as read" -MarkAsRead $true -ExceptIfFrom [email protected] -ExceptIfWithImportance High }
Weitere Informationen zu Posteingangsregeln finden Sie in diesem Artikel. Obwohl sich dieser Artikel auf Outlook-Regeln im lokalen Exchange konzentriert, gelten die dortigen Erkenntnisse auch für Microsoft 365.
Verantwortlicher für Ihre personenbezogenen Daten ist CodeTwo sp. z o.o. sp. k.
Weitere Informationen finden Sie in unserer Datenschutzerklärung.