Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les applets de commande dans Exchange Management Shell et Exchange Online PowerShelll prennent en charge différents types de filtres dans les applets de commande associées au destinataire :
- Filtres prédéfinis.
- Filtres personnalisés à l’aide du paramètre RecipientFilter .
- Filtres personnalisés à l’aide du paramètre Filter .
- Filtres personnalisés à l’aide du paramètre ContentFilter .
Dans les versions antérieures d’Exchange, la syntaxe de filtrage LDAP (Lightweight Directory Access Protocol) permet de créer des listes d’adresses personnalisées, des listes d’adresses globales, des stratégies d’adresse de messagerie et des groupes de distribution. La syntaxe de filtrage OPATH a remplacé la syntaxe de filtrage LDAP à partir d’Exchange Server 2007.
Filtres prédéfinis
Un filtre prédéfini utilise les propriétés populaires dans Exchange pour filtrer les destinataires pour des groupes de distribution dynamiques, des stratégies d’adresses e-mail, des listes d’adresses ou des listes d’adresses globales. Avec les filtres prédéfinis, vous pouvez utiliser Exchange PowerShell ou le Centre d’administration Exchange (CAE). À l’aide de filtres prédéfinis, vous pouvez effectuer les tâches suivantes :
- Déterminer l’étendue des destinataires.
- Ajoutez un filtrage conditionnel basé sur des propriétés communes telles que l’entreprise, le service et l’état ou la région.
- Ajouter des attributs personnalisés pour les destinataires. Pour plus d’informations, voir Attributs personnalisés.
Les paramètres suivants sont considérés comme des filtres prédéfinis :
- InclusDestinataires
- ConditionalCompany
- ConditionalDepartment
- ConditionalStateOrProvince
- ConditionalCustomAttribute1 en ConditionalCustomAttribute15.
Les filtres prédéfinis sont disponibles sur les applets de commande suivantes :
Exemple de filtre prédéfini
Cet exemple décrit l’utilisation de filtres prédéfinis dans Exchange Management Shell pour créer un groupe de distribution dynamique. La syntaxe employée dans cet exemple s’apparente sans être identique à celle que vous utiliseriez pour créer une stratégie d’adresse de messagerie, une liste d’adresses ou une liste d’adresses globale. Lorsque vous créez un filtre prédéfini, vous devez vous poser les questions suivantes :
À partir de quelle unité d’organisation voulez-vous inclure les destinataires (paramètre RecipientContainer ) ?
Remarque
La sélection de l’unité d’organisation à cet effet s’applique uniquement à la création de groupes de distribution dynamiques, et non à la création de stratégies d’adresses e-mail, de listes d’adresses ou de listes d’adresses globales.
Quels types de destinataires voulez-vous inclure (paramètre IncludedRecipients ) ?
Quelles conditions supplémentaires voulez-vous inclure dans le filtre (les paramètres ConditionalCompany, ConditionalDepartment, ConditionalStateOrProvince et ConditionalCustomAttribute ) ?
Cet exemple crée un groupe de distribution dynamique avec les propriétés suivantes :
- Nom : Contoso Finance.
- Types de destinataires : boîtes aux lettres utilisateur.
- Emplacement du destinataire : unité d’organisation nommée Contoso.com/Users.
- Filtres Incluez uniquement les destinataires dont l’attribut Service est défini en tant que Finance et l’attribut Société défini en tant que Contoso.
New-DynamicDistributionGroup -Name "Contoso Finance" -OrganizationalUnit Contoso.com/Users -RecipientContainer Contoso.com/Users -IncludedRecipients MailboxUsers -ConditionalDepartment "Finance" -ConditionalCompany "Contoso"
Cet exemple affiche les propriétés de ce nouveau groupe de distribution dynamique.
Get-DynamicDistributionGroup -Identity "Contoso Finance" | Format-List Recipient*,Included*
Filtres personnalisés à l’aide du paramètre RecipientFilter
Si les filtres prédéfinis ne répondent pas à vos besoins, vous pouvez créer des filtres personnalisés à l’aide du paramètre RecipientFilter . Ce paramètre est disponible sur les applets de commande suivantes :
Pour plus d’informations sur les propriétés filtrables que vous pouvez utiliser avec le paramètre RecipientFilter , consultez Propriétés filtrables pour le paramètre RecipientFilter.
Exemple de filtre personnalisé
L’exemple qui suit utilise le paramètre RecipientFilter pour créer un groupe de distribution dynamique. La syntaxe employée dans cet exemple s’apparente sans être identique à celle que vous utilisez pour créer une stratégie d’adresse de messagerie, une liste d’adresses ou une liste d’adresses globale.
Cet exemple utilise des filtres personnalisés pour créer un groupe de distribution dynamique ayant les propriétés suivantes :
- Nom : AllContosoNorth.
- Types de destinataires : boîtes aux lettres utilisateur.
- Emplacement du destinataire : unité d’organisation nommée Contoso.com/Users.
- Filtres Incluez uniquement les destinataires dont l’attribut Entreprise est défini en tant que Contoso et l’attribut Office défini en tant que Bâtiment Nord.
New-DynamicDistributionGroup -Name AllContosoNorth -OrganizationalUnit contoso.com/Users -RecipientFilter "((RecipientTypeDetails -eq 'UserMailbox') -and (Company -eq 'Contoso') -and (Office -eq 'North Building'))"
Filtres personnalisés à l’aide du paramètre Filter
Vous pouvez utiliser le paramètre Filter pour filtrer les résultats d’une commande et spécifier les objets à extraire. Par exemple, au lieu de récupérer tous les utilisateurs ou groupes, vous pouvez spécifier un ensemble d’utilisateurs ou de groupes à l’aide d’une chaîne de filtre. Ce type de filtre ne modifie pas la configuration ou les attributs des objets. Il modifie uniquement l’ensemble des objets retournés par la commande.
L’utilisation du paramètre Filter pour modifier des résultats de commande est un processus appelé filtrage côté serveur. Le filtrage côté serveur soumet la commande et le filtre au serveur pour traitement. Nous prenons également en charge le filtrage côté client, dans lequel la commande récupère tous les objets du serveur, puis applique le filtre dans la fenêtre de console locale. Pour effectuer le filtrage côté client, utilisez la cmdlet Where-Object. Pour plus d’informations sur le filtrage côté serveur et côté client, consultez « Filtrage des données » dans la rubrique Working with Command Output.
Pour rechercher les propriétés filtrables pour les cmdlets dotées du paramètre Filter, vous pouvez exécuter la commande Get par rapport à un objet et mettre en forme la sortie par un traitement en pipeline du paramètre Format-List. La plupart des valeurs renvoyées sont disponibles pour une utilisation dans le paramètre Filter .
L’exemple qui suit retourne une liste détaillée pour la boîte aux lettres de l’utilisateur Ayla.
Get-Mailbox -Identity Ayla | Format-List
Le paramètre Filtre est disponible pour les applets de commande destinataires suivantes :
- Get-CASMailbox
- Get-Contact
- Get-DistributionGroup
- Get-DynamicDistributionGroup
- Get-Group
- Get-Mailbox
- Get-MailContact
- Get-MailPublicFolder
- Get-MailUser
- Get-Recipient
- Get-RemoteMailbox
- Get-SecurityPrincipal
- Get-UMMailbox
- Get-User
- Get-UnifiedGroup
Pour plus d’informations sur les propriétés filtrables que vous pouvez utiliser avec le paramètre Filter , consultez Propriétés filtrables pour le paramètre Filter.
Exemple de paramètre de filtre
Cet exemple utilise le paramètre Filter pour renvoyer des informations sur les utilisateurs dont le titre contient le mot « responsable ».
Get-User -Filter "Title -like 'Manager*'"
Filtres personnalisés à l’aide du paramètre ContentFilter
Vous pouvez utiliser le paramètre ContentFilter pour sélectionner un contenu de message spécifique à exporter à l’aide de la cmdlet New-MailboxExportRequest. Si la commande trouve un message contenant la correspondance avec le filtre de contenu, elle exporte ce message dans un fichier .pst.
Exemple de paramètre ContentFilter
Cet exemple crée une demande d’exportation qui recherche dans la boîte aux lettres d’Ayla les messages dont le corps contient l’expression « prospectus de la société ». Si cette expression est trouvée, la commande exporte tous les messages avec cette expression dans un fichier .pst.
New-MailboxExportRequest -Mailbox Ayla -ContentFilter "Body -like 'company prospectus*'"
Pour plus d’informations sur les propriétés filtrables que vous pouvez utiliser avec le paramètre ContentFilter , consultez Propriétés filtrables pour le paramètre ContentFilter.
Informations supplémentaires sur la syntaxe OPATH
Lorsque vous créez vos propres filtres OPATH personnalisés, tenez compte des éléments suivants :
Utilisez la syntaxe suivante pour identifier les types de valeurs que vous recherchez :
Valeurs de texte : placez le texte entre des guillemets simples (par exemple,
'Value'ou'Value with spaces'). Vous pouvez également placer une valeur de texte entre guillemets doubles, mais cela limite les caractères que vous pouvez utiliser pour entourer l’ensemble du filtre OPATH.Variables : placez les variables qui doivent être développées entre guillemets simples (par exemple,
'$User'). Si la valeur de la variable contient des guillemets simples, vous devez identifier les guillemets simples (séquence d’échappement) pour développer correctement la variable. Par exemple, au lieu de'$User', utilisez'$($User -Replace "'","''")'.Valeurs entières : vous n’avez pas besoin de placer des entiers (par exemple,
500). Vous pouvez souvent placer des entiers entre guillemets simples ou doubles, mais cela limite les caractères que vous pouvez utiliser pour entourer l’ensemble du filtre OPATH.Valeurs système : n’incluez pas de valeurs système (par exemple,
$true,$false, ou$null). Pour placer l’ensemble du filtre OPATH entre guillemets doubles, vous devez échapper le signe dollar dans la valeur système (par exemple,`$true).
Vous devez entourer l’ensemble du filtre OPATH de guillemets doubles " " ou de guillemets simples ' '. Bien que tout objet de filtre OPATH soit techniquement une chaîne et non un bloc de script, vous pouvez toujours utiliser des accolades { }, mais uniquement si le filtre ne contient pas de variables qui nécessitent une expansion. Les caractères que vous pouvez utiliser pour entourer l’ensemble du filtre OPATH dépendent des types de valeurs que vous recherchez et des caractères que vous avez utilisés (ou n’avez pas utilisés) pour placer ces valeurs entre ces valeurs :
Valeurs du texte : dépend de la façon dont vous avez entouré le texte à rechercher :
- Texte entre guillemets simples : entourez l’ensemble du filtre OPATH de guillemets ou d’accolades.
- Texte entre guillemets : Placez l’ensemble du filtre OPATH entre accolades.
Variables : entourez tout le filtre OPATH de guillemets doubles (par exemple,
"Name -eq '$User'").Valeurs entières : pour vous assurer qu’elles fonctionnent dans tous les cas, placez-les de l’une des manières suivantes :
-
Entier entre guillemets simples : entourez l’ensemble du filtre OPATH de guillemets ou d’accolades
"CountryCode -eq '840'". -
Nombre entier entre guillemets : Placez l’ensemble du filtre OPATH entre accolades (par exemple
{CountryCode -eq "840"}).
-
Entier entre guillemets simples : entourez l’ensemble du filtre OPATH de guillemets ou d’accolades
Valeurs système : entourez l’ensemble du filtre OPATH de guillemets simples ou d’accolades (par exemple
'HiddenFromAddressListsEnabled -eq $true'). Si vous échappez la valeur système du signe dollar, vous pouvez également placer l’ensemble du filtre OPATH entre guillemets doubles (par exemple,"HiddenFromAddressListsEnabled -eq `$true").
La compatibilité des critères de recherche et les caractères valides que vous pouvez utiliser pour englober l’ensemble du filtre OPATH sont résumés dans le tableau suivant :
Valeur de recherche Filtre OPATH
enfermé dans
Guillemets doublesFiltre OPATH
enfermé dans
Guillemets simplesfiltre OPATH inclus dans
accolades'Text'✔ ✔ "Text"✔ '$Variable'✔ 500✔ ✔ ✔ '500'✔ ✔ "500"✔ $true✔ ✔ `$true✔ ✔ ✔ Placez le trait d’union avant tous les opérateurs logiques ou de comparaison. Les opérateurs les plus courants sont notamment les suivants :
-and-or-not-
-eq(égal) -
-ne(pas égal) -
-lt(inférieur à) -
-gt(supérieur à) -
-like(comparaison de chaînes) -
-notlike(comparaison de chaînes)
De nombreuses propriétés filtrables acceptent les caractères génériques. Si vous utilisez un caractère générique, optez pour l'opérateur -like plutôt que l'opérateur -eq. Utilisez l’opérateur -like pour rechercher des correspondances de modèles dans les types enrichis (par exemple, des chaînes). Utilisez l’opérateur -eq pour rechercher une correspondance exacte.
Lorsque vous utilisez l’opérateur -like dans Exchange Online PowerShell, le caractère générique est pris en charge comme suffixe dans la plupart des paramètres. Par exemple,
"Department -like 'sales*'"est autorisé, mais"Department -like '*sales'"n’est pas autorisé.Conseil
Même si un préfixe générique fonctionne dans un paramètre de filtre dans Exchange Online PowerShell, nous vous déconseillons de l’utiliser en raison de problèmes de faibles performances.
Pour plus d’informations sur les opérateurs que vous pouvez utiliser, consultez :
Documentation du filtrage des destinataires
Le tableau suivant contient des liens vers des articles pour vous aider à en savoir plus sur les propriétés filtrables que vous pouvez utiliser avec les commandes de destinataire Exchange.
| Article | Description |
|---|---|
| Propriétés filtrables pour le paramètre RecipientFilter sur les applets de commande Exchange | En savoir plus sur les propriétés filtrables disponibles pour le paramètre RecipientFilter . |
| Propriétés filtrables du paramètre Filtre sur les applets de commande Exchange | En savoir plus sur les propriétés filtrables disponibles pour le paramètre Filter . |
| Filtres dans le module PowerShell d’Exchange Online | Découvrez les éléments à prendre en compte pour les filtres dans les neuf applets de commande Get-EXO* exclusives du module PowerShell d’Exchange Online. |