Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Командлеты командной консоли Exchange и PowerShell в Exchange Onlineподдерживают различные типы фильтров в командлетах, связанных с получателями:
- Предварительно законсервированные фильтры.
- Пользовательские фильтры с помощью параметра RecipientFilter .
- Настраиваемые фильтры с помощью параметра Filter .
- Настраиваемые фильтры с помощью параметра ContentFilter .
В более поздних версиях Exchange использовался синтаксис фильтрации LDAP для создания настраиваемых списков адресов, глобальных списков адресов, групп рассылки и политик электронных адресов. Начиная с Exchange Server 2007 синтаксис фильтрации OPATH заменил синтаксис фильтрации LDAP.
Предустановленные фильтры
Готовый фильтр использует популярные свойства Exchange для фильтрации получателей на предмет динамических групп рассылки, политик адресов электронной почты, списков адресов или глобальных адресов. Для предварительно подготовленных фильтров можно использовать Exchange PowerShell или Центр администрирования Exchange (EAC). С помощью готовых фильтров можно выполнять следующие задачи:
- Определение области получателей.
- Добавление условной фильтрации на основе общих свойств, таких как компания, отдел, область или регион.
- Добавление настраиваемых атрибутов для получателей. Дополнительные сведения см. в статье Custom Attributes.
Следующие параметры считаются предустановленными фильтрами.
- ВключенныеПолучатели
- УсловнаяКомпания
- УсловныйДепартамент
- УсловныйШтатилиПровинция
- ConditionalCustomAttribute1 — значение ConditionalCustomAttribute15.
Предварительно заготовленные фильтры доступны в следующих командлетах:
Пример готового фильтра
В этом примере описывается создание динамической группы рассылки с использованием готовых фильтров командной консоли Exchange. Синтаксис задействованных в примере команд подобен синтаксису, который используется для создания политики электронных адресов и обычного или глобального списка адресов, но не идентичен ему. При создании заранее подготовленного фильтра необходимо ответить на указанные ниже вопросы.
Из какого подразделения нужно включить получателей (параметр RecipientContainer )?
Примечание.
Выбор подразделения для этой цели применяется только к созданию динамических групп рассылки, но не к созданию политик адресов электронной почты, списков адресов или глобальных адресов.
Какие типы получателей нужно включить (параметр IncludedRecipients )?
Какие дополнительные условия вы хотите включить в фильтр (параметры ConditionalCompany, ConditionalDepartment, ConditionalStateOrProvince и ConditionalCustomAttribute )?
В этом примере создается динамическая группа рассылки со следующими свойствами:
- Имя: Contoso Финансы.
- Типы получателей: почтовые ящики пользователей.
- Расположение получателя: подразделение с именем Contoso.com/Users.
- Фильтры Включайте только получателей, для которых атрибут Department определен как Finance, а атрибут компании — как Contoso.
New-DynamicDistributionGroup -Name "Contoso Finance" -OrganizationalUnit Contoso.com/Users -RecipientContainer Contoso.com/Users -IncludedRecipients MailboxUsers -ConditionalDepartment "Finance" -ConditionalCompany "Contoso"
В этом примере отображаются свойства новой динамической группы рассылки.
Get-DynamicDistributionGroup -Identity "Contoso Finance" | Format-List Recipient*,Included*
Настраиваемые фильтры, использующие параметр RecipientFilter
Если готовые фильтры вам не подходят, можно создать пользовательские фильтры с помощью параметра RecipientFilter . Этот параметр доступен в следующих командлетах:
Дополнительные сведения о фильтруемых свойствах, которые можно использовать с параметром RecipientFilter , см. в разделе Фильтруемые свойства для параметра RecipientFilter.
Пример настраиваемого фильтра
Для создания динамической группы рассылки в следующем примере используется параметр RecipientFilter. Синтаксис этого примера подобен, но не идентичен синтаксису, используемому для создания политики адресов электронной почты и обычного или глобального списка адресов.
В этом примере используются настраиваемые фильтры, позволяющие создать динамическую группу рассылки со следующими свойствами:
- Имя: AllContosoNorth.
- Типы получателей: почтовые ящики пользователей.
- Расположение получателя: подразделение с именем Contoso.com/Users.
- Фильтры Включайте только получателей, для которых атрибут компании определен как Contoso, а атрибут Office — как северное здание.
New-DynamicDistributionGroup -Name AllContosoNorth -OrganizationalUnit contoso.com/Users -RecipientFilter "((RecipientTypeDetails -eq 'UserMailbox') -and (Company -eq 'Contoso') -and (Office -eq 'North Building'))"
Настраиваемые фильтры, использующие параметр Filter
Параметр Filter используется для фильтрации результатов команды и указания получаемых объектов. Например, вместо получения списка всех пользователей или групп можно указать набор пользователей или групп с помощью строки фильтра. Этот тип фильтра не изменяет конфигурацию или атрибуты объектов. Он только изменяет набор объектов, данные о которых возвращает команда.
Использование параметра Filter для изменения результатов команды представляет собой фильтрацию на стороне сервера. В случае фильтрации на стороне сервера команда или фильтр обрабатываются на сервере. Мы также поддерживаем фильтрацию на стороне клиента, при которой команда получает все объекты с сервера, а затем применяет фильтр в окне локальной консоли. Для выполнения фильтрации на стороне клиента используйте командлет Where-Object. Дополнительные сведения о фильтрации на стороне сервера и клиента см. раздел "Фильтрация данных" статьи Working with Command Output.
Чтобы найти фильтруемые свойства для командлетов с параметром Filter, можно запустить команду Get для объекта и отформатировать вывод путем передачи по конвейеру параметра Format-List. Большинство возвращаемых значений доступны для использования в параметре Filter .
Следующий пример возвращает подробный список почтового ящика пользователя Ayla.
Get-Mailbox -Identity Ayla | Format-List
Параметр фильтра доступен для следующих командлетов получателя:
- Get-CASMailbox
- Get-Contact
- Получить DistributionGroup
- Получить DynamicDistributionGroup
- Get-Group
- Get-Mailbox
- Get-MailContact
- Get-MailPublicFolder
- Get-MailUser
- Get-Recipient
- Get-RemoteMailbox
- Get-SecurityPrincipal
- Get-UMMailbox
- Get-User
- Get-UnifiedGroup
Дополнительные сведения о фильтруемых свойствах, которые можно использовать с параметром Фильтр, см. в разделе Фильтруемые свойства для параметра Фильтр.
Пример фильтра
В этом примере параметр Filter используется для возврата сведений о пользователях, должность которых содержит слово "руководитель".
Get-User -Filter "Title -like 'Manager*'"
Настраиваемые фильтры, использующие параметр ContentFilter
Параметр ContentFilter позволяет выбрать определенное содержимое сообщения для экспорта при использовании командлета New-MailboxExportRequest. При обнаружении сообщения, соответствующего фильтру содержимого, оно экспортируется в PST-файл.
Пример параметра ContentFilter
В этом примере создается запрос на экспорт, который ищет в почтовом ящике Айлы сообщения, текст которых содержит фразу "проспект компании". Если эта фраза найдена, команда экспортирует все сообщения, содержащие эту фразу, в PST-файл.
New-MailboxExportRequest -Mailbox Ayla -ContentFilter "Body -like 'company prospectus*'"
Дополнительные сведения о фильтруемых свойствах, которые можно использовать с параметром ContentFilter , см. в разделе Фильтруемые свойства для параметра ContentFilter.
Дополнительные сведения о синтаксисе OPATH
При создании собственных настраиваемых фильтров OPATH учитывайте следующие моменты:
Используйте следующий синтаксис для определения типов искомых значений:
Текстовые значения: текст должен быть заключен в одинарные кавычки (например,
'Value'или'Value with spaces'). Текстовое значение также можно заключить в двойные кавычки, но это ограничит количество символов, используемых для заключения всего фильтра OPATH.Переменные: Заключите переменные, которые необходимо развернуть в одинарные кавычки (например,
'$User'). Если значение переменной содержит одинарные кавычки, для правильного расширения переменной необходимо определить (escape) одинарные кавычки. Например, вместо'$User'используйте'$($User -Replace "'","''")'.Целочисленные значения: Не нужно заключать целые числа (например,
500). Часто можно заключить целые числа в одинарные или двойные кавычки, но это ограничивает количество символов, которые можно использовать для заключения всего фильтра OPATH.Системные значения: не включайте системные значения (например,
$true,$false, или$null). Чтобы заключить весь фильтр OPATH в двойные кавычки, необходимо избежать системного значения со знаком доллара (например,`$true).
Необходимо заключить весь фильтр OPATH в двойные кавычки " " или одинарные кавычки ' '. Хотя любой объект-фильтр OPATH технически является строкой, а не блоком сценария, фигурные скобки { } все же можно использовать, но только в том случае, если фильтр не содержит переменных, требующих расширения. Символы, которые можно использовать для заключения всего фильтра OPATH, зависят от типов искомых значений и символов, которые использовались (или не использовались) для заключения этих значений.
Текстовые значения: зависит от того, как вы включили искомый текст:
- Текст, заключенный в одинарные кавычки: Заключите весь фильтр OPATH в двойные кавычки или фигурные скобки.
- Текст, заключенный в двойные кавычки: заключать весь фильтр OPATH в фигурные скобки.
Переменные: Заключите весь фильтр OPATH в двойные кавычки (например,
"Name -eq '$User'").Целочисленные значения: Чтобы они работали во всех случаях, заключите их одним из следующих способов:
-
Целое число, заключенное в одинарные кавычки: Заключите весь фильтр OPATH в двойные кавычки или фигурные скобки
"CountryCode -eq '840'". -
Целое число, заключенное в двойные кавычки: Заключайте весь фильтр OPATH в фигурные скобки (например
{CountryCode -eq "840"}).
-
Целое число, заключенное в одинарные кавычки: Заключите весь фильтр OPATH в двойные кавычки или фигурные скобки
Системные значения: Заключайте весь фильтр OPATH в одинарные кавычки или скобки (например
'HiddenFromAddressListsEnabled -eq $true'). Если вы экранируете системное значение со знаком доллара, вы также можете заключить весь фильтр OPATH в двойные кавычки (например,"HiddenFromAddressListsEnabled -eq `$true").
Совместимость условий поиска и допустимые символы, которые можно использовать для заключения всего фильтра OPATH, приведены в следующей таблице.
Искомое значение фильтр OPATH
включено в
Двойные кавычкифильтр OPATH
включено в
одинарные кавычкиФильтр OPATH включен в
Фигурные скобки'Text'✔ ✔ "Text"✔ '$Variable'✔ 500✔ ✔ ✔ '500'✔ ✔ "500"✔ $true✔ ✔ `$true✔ ✔ ✔ Добавьте дефис перед всеми логическими операторами или операторами сравнения. Наиболее распространенные операторы:
-and-or-not-
-eq(равно) -
-ne(не равно) -
-lt(меньше) -
-gt(больше) -
-like(сравнение строк) -
-notlike(сравнение строк)
Многие фильтруемые свойства принимают подстановочные знаки. При использовании подстановочных знаков применяйте оператор -like вместо оператора -eq. Используйте оператор -like для поиска соответствий шаблонов в форматированных типах (например, строках). Используйте оператор -eq для поиска точного совпадения.
При использовании оператора -like в Exchange Online PowerShell подстановочный знак поддерживается только в качестве суффикса в большинстве параметров. Например,
"Department -like 'sales*'"разрешено, а"Department -like '*sales'"— нет.Совет
Даже если префикс с подстановочным знаком работает в параметре фильтра в Exchange Online PowerShell, мы не рекомендуем использовать его из-за проблем с производительностью.
Дополнительные сведения об имеющихся операторах см. в следующих статьях:
Документация фильтра получателей
В таблице ниже приведены ссылки на статьи, в которых рассказывается о фильтруемых свойствах, используемых с командами получателей Exchange.
| Статья | Описание |
|---|---|
| Фильтруемые свойства для параметра RecipientFilter командлетов Exchange | Узнайте больше о фильтруемых свойствах, доступных для параметра RecipientFilter . |
| Фильтруемые свойства параметра Filter командлетов Exchange | Более подробно о фильтруемых свойствах, доступных для параметра Фильтр. |
| Фильтры в модуле PowerShell Exchange Online | Сведения о фильтрах в девяти эксклюзивных командлетах Get-EXO* в модуле PowerShell Exchange Online. |