Gestion des règles Outlook des utilisateurs depuis Exchange Management Shell (avec PowerShell)

Les règles Outlook aident les utilisateurs à organiser leurs boîtes aux lettres. Grâce à eux, le tamisage du spam des messages importants peut être plus automatique et les boîtes aux lettres des utilisateurs peuvent sembler moins chaotiques. C’est le bon côté des règles Outlook. Le côté moins positif est que les utilisateurs dépendent fortement d’eux et chaque fois qu’il y a un problème concernant les règles, les administrateurs se retrouvent dans l’œil de la tempête. Vous pouvez cependant rester calme, car je vais vous montrer comment gérer les règles Outlook des utilisateurs à l’aide de PowerShell. Mais d’abord, vous devez connaître la différence entre les deux types de ces règles, pour savoir ce que vous pouvez faire avec PowerShell et ce qui nécessite une intervention directe dans les clients de messagerie des utilisateurs.

Règles côté serveur par rapport aux règles côté client

Les règles Outlook peuvent être côté serveur ou côté client. Comprendre les différences entre elles est crucial pour un administrateur, car le type détermine quand elles sont exécutées et quelles applets de commande peuvent être utilisées pour les gérer.

  • Règles côté serveur : Leur exécution est entièrement effectuée par le serveur Exchange. Ils sont appliqués même lorsque le client Outlook de l’utilisateur est hors ligne. Vous pouvez utiliser toutes les applets de commande répertoriées dans la partie suivante de l’article. Gardez à l’esprit que les règles créées dans l’application Web Outlook sont toujours côté serveur. Les utilisations possibles de ces règles Outlook incluent:
  1. Modifier la priorité d’un e-mail,
  2. Déplacer un message entrant dans un autre dossier,
  3. Supprimer un e-mail.
  • Règles côté client : Ces règles sont exécutées uniquement lorsque Outlook est en ligne et que l’utilisateur est connecté. Cela ne fonctionnera pas si un e-mail est accessible à partir d’un autre client de messagerie ou d’un appareil mobile. De plus, il est impossible d’utiliser PowerShell pour les créer ou les modifier avec New-InboxRule et Set-InboxRule En utilisant des règles côté client, Outlook peut par exemple:
  1. Déplacez les messages vers un fichier PST,
  2. Émettez un son spécifique lorsque le courrier d’une certaine adresse arrive
  3. Marquez un message comme lu

Pour vérifier si une règle est côté serveur ou côté client, vous pouvez utiliser la fenêtre Gérer les règles & Alertes dans Outlook. Les règles côté client ont du texte (client uniquement) ajouté à leur nom, tandis que les règles du serveur ne le font pas:

 Gestion des règles et alertes Outlook

Cette fenêtre Outlook est le seul endroit où vous pouvez vérifier le type d’une règle Outlook à coup sûr. Il n’y a aucun moyen certain de le déterminer dans Exchange Management Shell. Il est vrai que, généralement, les règles côté client ont une description plus courte dans EMS, comme indiqué dans la partie suivante de l’article, mais ce n’est pas un moyen infaillible de déterminer un type de règle.

Gestion des règles Outlook avec PowerShell

À partir d’Exchange Server 2010, Microsoft a donné la possibilité d’utiliser PowerShell pour la gestion à distance des règles Outlook. Les applets de commande utilisées à cet effet sont les suivantes:

  • Get-InboxRule, qui prévisualise le jeu de règles pour une boîte aux lettres spécifiée,
  • New-InboxRule, qui crée une nouvelle règle à distance,
  • Enable-InboxRule et Disable-InboxRule utilisé pour activer et désactiver les règles,
  • Set-InboxRule, qui modifie les règles,
  • Remove-InboxRule, qui peut être utilisé pour supprimer les règles

Gardez à l’esprit que l’exécution réussie de n’importe quelle applet de commande de la liste ci-dessus (à l’exception de Get-InboxRule), supprime toutes les règles côté client créées dans Outlook pour un utilisateur (Reportez-vous à ce site docs pour plus d’informations).

Get-InboxRule

Cette applet de commande est principalement utilisée pour prévisualiser toutes les règles définies pour une boîte aux lettres spécifique. Dans sa forme de base, il ressemble à ça:

Get-InboxRule -Mailbox <mailbox_name>

 Gestion des règles Outlook Liste de règles Get-InboxRule

Comme vous pouvez le voir, chaque règle a son propre paramètre de règle distinct. Ce paramètre peut être utilisé pour afficher ses paramètres et sa description, comme ceci:

Get-InboxRule –Mailbox <mailbox_name> -Identity <number> | FL

 Gestion des règles Outlook Description de la règle Get-InboxRule

Cependant, il est beaucoup plus facile et plus efficace de rechercher et d’afficher les règles Outlook par leur nom et leur description:

Get-InboxRule –Mailbox <mailbox_user> | Select Name, Description | FL

 Description du nom de la liste de règles Get-InboxRule

Ici, vous pouvez voir la différence entre les règles côté serveur et côté client, mentionnée précédemment : Dans PowerShell, la description de la première est complète, tandis que la description de la seconde est beaucoup plus courte, ne montrant que les conditions de la règle :

Outlook:

 Règles Get-InboxRule Outlook côté serveur vs côté client

Shell de gestion Exchange:

 Règles Get-InboxRule Gestion côté serveur vs côté client règles Outlook

New-InboxRule

Cette applet de commande permet à un administrateur Exchange Server de créer une règle côté serveur à distance. Il ne peut pas être utilisé pour créer une règle côté client. En d’autres termes, vous pouvez configurer une telle règle uniquement à l’aide du client Outlook d’un utilisateur.

Je vais montrer comment créer deux règles différentes à l’aide de cette applet de commande.

L’applet de commande suivante crée une règle qui déplace les messages contenant le mot  » spam  » dans l’objet vers le dossier de courrier indésirable:

New-InboxRule -Name "Move to Spam" -Mailbox j.doe -MoveToFolder '[email protected]:\Junk Email' -SubjectContainsWords "Spam" -StopProcessingRules $True

 Nouveau - Règle InboxRule passez à spam

Gardez à l’esprit que vous pouvez le combiner avec une règle de flux de courrier qui ajoute le mot « spam » à l’objet de l’e-mail lorsque vous remplissez certaines conditions.

L’applet de commande suivante génère une règle qui déplace les e-mails reçus avant le 15 avril 2017 de la Boîte de réception vers le sous-dossier Archive:

New-InboxRule -Name "To archive" -Mailbox [email protected] -MoveToFolder "[email protected]:\Inbox\Archive" -ReceivedBeforeDate "04.15.2017"

 Nouvelle règle -InboxRule déplacer vers l'archive

Enable-InboxRule, Disable-InboxRule,

Vous pouvez les utiliser pour activer et désactiver les règles Outlook

Vous pouvez vérifier quelles règles sont activées à l’aide de Get-InboxRule:

Get-InboxRule –Mailbox <mailbox_name>

 Liste de règles Get-InboxRule activée

La désactivation et l’activation d’une règle fonctionnent de la même manière:

Disable-InboxRule -Identity <rule_name> -Mailbox <mailbox_name>

 Désactiver la gestion des règles Outlook - InboxRule 1

Enable-InboxRule -Identity <rule_name> -Mailbox <mailbox_name>

 Gestion des règles Outlook Enable - InboxRule 1

Set-InboxRule

Cette applet de commande vous permet de modifier n’importe quelle règle côté serveur. C’est une bonne pratique de vérifier la description détaillée de la règle que vous souhaitez modifier. Vous pouvez le faire avec l’applet de commande Get-InboxRule décrite précédemment:

Get-InboxRule –Identity <rule_name> Mailbox <mailbox_user> | Select Name, Description | FL

 Nom de vérification de la règle Get-InboxRule description

Modifions ses conditions pour qu’il réagisse au mot « spam » inclus dans le corps de l’e-mail, au lieu de son sujet:

Set-InboxRule -Identity <rule_name> -Mailbox <mailbox_name> -BodyContainsWords "spam" -SubjectContainsWords $nule

 Modification de Set-InboxRule sous réserve de body

Remove-InboxRule

La dernière applet de commande supprime de manière irréversible toute règle que vous spécifiez dans une boîte aux lettres.

Remove-InboxRule -Identity <rule_name> -Mailbox <mailbox_name>

 Gestion des règles Outlook Remove - InboxRule

Problèmes courants avec les règles Outlook

Les règles Outlook permettent aux utilisateurs de contrôler et d’organiser le contenu de leurs boîtes aux lettres. En même temps, ces règles génèrent des problèmes avec les messages. Voici les problèmes les plus courants rencontrés par les administrateurs d’Exchange Server :

Conflit de règles

Les conflits se produisent généralement lorsque plusieurs règles s’appliquent à un e-mail entrant. Par exemple:

John reçoit un message de Tony avec le sujet Important. Outlook de John a deux règles qui s’appliquent à cet e-mail. Le premier devrait déplacer tous les messages de Tony vers le sous-dossier Co-workers. La deuxième règle est censée déplacer les e-mails avec le sujet Important dans le sous-dossier e-mails importants.

Si les deux règles sont du type côté client, elles seront exécutées en fonction de leur priorité (vous pouvez vérifier la priorité des règles en utilisant Get-InboxRule-Mailbox < mailbox_name >). Dans cette situation, le message de Tony ira dans le sous-dossier des collègues et la deuxième règle ne sera pas appliquée en raison du conflit.

Mais le vrai problème commence, lorsque les règles côté serveur et côté client se mélangent. Lorsque le client Outlook est hors ligne, les règles côté serveur sont exécutées en premier, même si elles ont une priorité inférieure. Revenons à l’exemple ci-dessus. Si la première règle est côté client et la seconde est côté serveur, le message sera déplacé vers différents dossiers, selon que le client est en cours d’exécution ou non.

Règles de transfert

La possibilité de créer de telles règles conduit souvent à la duplication d’e-mails, à leur disparition ou à un mauvais destinataire. Un tel problème peut survenir si un utilisateur oublie qu’avant de partir en vacances, il fixe une règle qui transmet sa correspondance à quelqu’un d’autre (et cela arrive souvent).

Vous pouvez résoudre de tels problèmes en utilisant les journaux de l’applet de commande Get-MessageTracingLog. Vous pouvez trouver de telles anomalies en recherchant l’entrée MAILBOXRULE sous l’en-tête Source:

 Gestion des règles Outlook Get-MessageTrackingLog

Ensuite, vous pouvez filtrer cet événement MAILBOXRULE:

 Gestion des règles Outlook Get-MessageTrackingLog détails

Et enfin, utilisez la règle Get-InboxRule pour savoir dont la règle est responsable du problème:

 Gestion des règles Outlook Get-MessageTrackingLog anomalie

Règles Outlook dans une entreprise

En plus d’aider les utilisateurs individuels, les règles Outlook peuvent également être utilisées pour organiser le flux de travail de toute une entreprise. Par exemple, vous pouvez créer à distance des sous-dossiers dans les dossiers de boîte de réception des utilisateurs, puis créer une règle qui déplace les e-mails d’une application interne de l’entreprise vers les dossiers nouvellement créés. Cela aidera à garder la correspondance bien organisée dans toute une entreprise.

Tout d’abord, vous pouvez utiliser un script basé sur EWS pour créer des dossiers dans les boîtes aux lettres de vos utilisateurs.

Ensuite, en utilisant New-InboxRule, vous pouvez créer une règle qui déplacera les messages de votre choix vers les sous-dossiers nouvellement créés.

Notez qu’il s’agit d’un exemple unique de l’utilisation des règles Outlook dans une entreprise.

Sans aucun doute, les règles Outlook peuvent être utiles dans de nombreuses situations. Dans le même temps, leur gestion avec les règles de flux de courrier peut être assez écrasante du point de vue d’un administrateur de serveur Exchange. Dans certains cas, une multitude de ces règles peuvent causer une perturbation majeure du flux de courrier de l’entreprise. Pour faciliter le travail d’un administrateur, vous pouvez utiliser Exchange Rules Pro. L’une de ses nombreuses caractéristiques est qu’il aide à gérer les règles de transport et à s’assurer que le flux de courrier n’est pas perturbé.

Write a Comment

Votre adresse e-mail ne sera pas publiée.