Конечная цель здесь - создать динамические группы рассылки на основе аналогичных баз данных Exchange. У нас есть почтовые ящики для персонала, разделенные на несколько баз данных по регионам, и присвоение имен следует установленным соглашениям.
В качестве доказательства концепции я использовал команду «Get-Mailbox» с операторами -Filter и -or для вывода нескольких баз данных, и она работает. Результат примерно такой:
Get-Mailbox -Filter {
(
(Database -eq 'CN=DBname01,CN=therestoftheDistinguishedName,DC=com')
-or
(Database -eq 'CN=DBname02,CN=therestoftheDistinguishedName,DC=com')
)
}
Это прекрасно работает ... Я получил список почтовых ящиков в этих базах данных. Но это не идеально, если добавляется еще одна база данных из-за увеличения количества пользователей.
Документация MS Вот говорит, что свойство homeMDB / Database совместимо с подстановочными знаками ...
Итак, теоретически это должно работать и давать тот же результат:
Get-Mailbox -Filter {(Database -like "CN=DBname*")}
Но эта команда не возвращает результатов .... нет ошибок ... ничего.
Разве -like просто не поддерживается? Я делаю что-то неправильно?
P.S. «-Filter» будет заменен на «-RecipientFilter» для команды New-DynamicDistributionGroup. Get-Mailbox используется для проверки правильности работы моего фильтра.
Поскольку вы собираетесь использовать параметр RecipientFilter для New-DynamicDistributionGroup, я могу понять, почему вы задали вопрос.
Я могу заставить его работать с атрибутами, отличными от «базы данных». Увидеть ниже:
New-DynamicDistributionGroup "Test Group G" -RecipientFilter {DisplayName -like "G*"} -OrganizationalUnit $OU
$vargroup = Get-DynamicDistributionGroup "Test Group G"
Get-Recipient -RecipientPreviewFilter $varGroup.RecipientFilter
Возвращает список почтовых пользователей (ящики, контакты и т. Д.), Которые включены в новую группу. Но когда вы запускаете его с параметром RecipientFilter {Database -like "partialDBname*"}
, те же команды выше также ничего не возвращают, как и Get-mailbox -Filter {Database -eq "DBname"}
ничего не возвращает. Возможно, вам придется сделать это не с атрибутом базы данных. Когда вы смотрите на параметр Filter на странице TechNet командлета Get-Mailbox, он фактически указывает на ту же страницу «Filterable properties», на которую вы ссылались.
Изменить: похоже этот это вещь. Это старый блог MS, но я не видел ничего обновленного для будущих версий Exchange. Похоже, фильтрация по базам данных невозможна. Однако вы можете использовать другие атрибуты. Вы сказали, что они в разных регионах. Вы можете использовать групповую политику для добавления / замены атрибутов пользовательских объектов.
Я бы создал тестовые группы и использовал приведенные выше команды, чтобы убедиться, что я получил желаемые результаты.
Попробуйте эту команду:
get-mailbox |where{$_.database -like 'DBname*'}|ft name,database