Управление списками адресов в Exchange Online
Список адресов — это набор поддерживающих почту объектов получателей в Exchange Online. В основе списков адресов лежат фильтры получателей. Дополнительные сведения о списках адресов см. в разделе Списки адресов в Exchange Online.
Дополнительные сведения о задачах управления, связанных со списками адресов, см. в разделе Процедуры со списками адресов в Exchange Online.
Ищете Exchange Server версию этого раздела? См . статью Создание списков адресов.
Что нужно знать перед началом работы
Предполагаемое время для завершения каждой процедуры: 5 минут.
По умолчанию роль списка адресов не назначается ни одной группе ролей в Exchange Online. Чтобы использовать командлеты, для которых требуется роль списка адресов, необходимо добавить ее в группу ролей. Дополнительные сведения см. в разделе Изменение групп ролей.
Вы можете использовать Exchange Online PowerShell только для выполнения практически всех процедур, описанных в этом разделе (все, кроме скрытия получателей из списков адресов). Сведения о том, как подключиться к Exchange Online PowerShell, см. в статье Подключение к Exchange Online PowerShell.
Совет
Возникли проблемы? Обратитесь за помощью к участникам форумов Exchange. Посетите форумы по адресу Exchange Online или Exchange Online Protection.
Создание списков адресов с помощью Exchange Online PowerShell
Вы можете создавать списки адресов как с фильтрами получателей, так и без них. Дополнительные сведения о фильтрах получателей см. в статье Фильтры получателей для списков адресов в Exchange Online PowerShell.
Чтобы создать список адресов, используйте следующий синтаксис:
New-AddressList -Name "<Address List Name>" [-Container <ExistingAddressListPath>] [<Precanned recipient filter | Custom recipient filter>] [-RecipientContainer <OrganizationalUnit>]
В этом примере создается список адресов с предварительно заданным фильтром получателей:
Название: Юго-Восточные офисы
Расположение: в корневом каталоге (",
\
также известном как Все адреса Списки), так как мы не использовали параметр Container, а значение по умолчанию — "\
".Предуканированный фильтр получателей: все пользователи с почтовыми ящиками, где значение штата или провинции — GA, AL или LA (Джорджия, Алабама или Луизиана).
New-AddressList -Name "Southeast Offices" -IncludedRecipients MailboxUsers -ConditionalStateorProvince "GA","AL","LA"
В этом примере создается список адресов с настраиваемым фильтром получателей:
Имя: Северо-Западные руководители
Расположение: в существующем списке адресов с именем Северная Америка.
Настраиваемый фильтр получателей. Все пользователи с почтовыми ящиками, где значение Title содержит director или manager, а значение штата или провинции — WA, OR или ID (Вашингтон, Орегон или Айдахо).
New-AddressList -Name "Northwest Executives" -Container "\North America"-RecipientFilter "(RecipientType -eq 'UserMailbox') -and (Title -like '*Director*' -or Title -like '*Manager*') -and (StateOrProvince -eq 'WA' -or StateOrProvince -eq 'OR' -or StateOrProvince -eq 'ID')"
Подробные сведения о синтаксисе и параметрах см. в разделе New-AddressList.
В этом примере создается список адресов с именами oregon and Washington Users с помощью параметра RecipientFilter и включает получателей, которые являются пользователями почтовых ящиков, для которых для параметра StateOrProvince задано значение Washington
или Oregon
.
New-AddressList -Name "Oregon and Washington" -RecipientFilter "((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'Washington') -or (StateOrProvince -eq 'Oregon')))"
В этом примере создается дочерний список адресов «Building 34 Meeting Rooms» в родительском контейнере «All Rooms» с использованием встроенных условий.
New-AddressList -Name "Building 34 Meeting Rooms" -Container "\All Rooms" -IncludedRecipients Resources -ConditionalCustomAttribute1 "Building 34"
Подробные сведения о синтаксисе и параметрах см. в разделе New-AddressList.
Как проверить, все ли получилось?
Чтобы убедиться, что список адресов успешно создан, замените <AddressListIdentity> путем\name списка адресов и выполните следующую команду в Exchange Online PowerShell, чтобы проверить значения свойств:
Get-AddressList -Identity "<AddressListIdentity>" | Format-List Name,RecipientFilterType,RecipientFilter,IncludedRecipients,Conditional*
Использование Exchange Online PowerShell для просмотра членов списков адресов
Технически эта процедура возвращает всех получателей (включая скрытых получателей), которые соответствуют фильтрам получателей для списка адресов. Получатели, которые фактически видны в списке адресов, имеют значение False
свойства HiddenFromAddressListsEnabled .
Чтобы просмотреть члены списка адресов, используйте следующий синтаксис:
$<VariableName> = Get-AddressList -Identity <AddressListIdentity>; Get-Recipient -ResultSize unlimited -RecipientPreviewFilter $<VariableName>.RecipientFilter | select Name,PrimarySmtpAddress,HiddenFromAddressListsEnabled
В этом примере возвращаются члены списка адресов с именем Юго-Восточные офисы.
$AL = Get-AddressList -Identity "Southeast Offices"; Get-Recipient -ResultSize unlimited -RecipientPreviewFilter $AL.RecipientFilter | select Name,PrimarySmtpAddress,HiddenFromAddressListsEnabled
В этом примере результаты экспортируются в файл C:\My Documents\South Office Export.csv.
$AL = Get-AddressList -Identity "Southeast Offices"; Get-Recipient -ResultSize unlimited -RecipientPreviewFilter $AL.RecipientFilter | select Name,PrimarySmtpAddress,HiddenFromAddressListsEnabled | Export-Csv -NoTypeInformation -Path "C:\My Documents\Southeast Offices Export.csv"
Обновление списков адресов с помощью Exchange Online PowerShell
Командлет Update-AddressList (или Update-GlobalAddressList) недоступен в Exchange Online PowerShell. Если получатели, у которых должен появиться список адресов, нет, необходимо изменить необходимое значение свойства для этих пользователей на временное значение, а затем вернуться к значению, требуемому для списка адресов. Вы можете обновить значения свойств пользователя в Центре администрирования Exchange (EAC) или Exchange Online PowerShell, но быстрее выполнять массовые операции в PowerShell.
Например, предположим, что в списке адресов с именами Oregon and Washington Users используется фильтр "((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'Washington') -or (StateOrProvince -eq 'Oregon')))"
, но список адресов не включает всех, чьи значения свойств StateOrProvince заданы правильно. Чтобы обновить список адресов, сделайте следующее:
С помощью запроса из списка адресов найдите всех пользователей, которые должны быть в этом списке. Например:
$Before = Get-User -Filter "((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'Oregon') -or (StateOrProvince -eq 'Washington')))" -ResultSize Unlimited
Измените необходимое значение свойства на временное. Например, измените значения StateOrProvince с
Oregon
наOR
, аWashington
— наWA
:$Before | where {$_.StateOrProvince -eq 'Oregon'} | foreach {Set-User $_.Identity -StateOrProvince OR}
$Before | where {$_.StateOrProvince -eq 'Washington'} | foreach {Set-User $_.Identity -StateOrProvince WA}
Снова найдите этих пользователей по временным значениям свойств. Например:
$After = Get-User -Filter "((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'OR') -or (StateOrProvince -eq 'WA')))" -ResultSize Unlimited
Измените временное значение на необходимое. Например, измените значения StateOrProvince с
OR
наOregon
, аWA
— наWashington
:$After | where {$_.StateOrProvince -eq 'OR'} | foreach {Set-User $_.Identity -StateOrProvince Oregon}
$After | where {$_.StateOrProvince -eq 'WA'} | foreach {Set-User $_.Identity -StateOrProvince Washington}
Примечания.
Для свойств title, department и address требуются командлеты Get-User и Set-User . Свойства с CustomAttribute1 по CustomAttribute15 требуют командлетов Get-Mailbox и Set-Mailbox. Дополнительные сведения о свойствах, доступных для какого командлета, см. в следующих разделах:
Если в списке адресов отсутствует лишь небольшое количество пользователей, вы можете изменить необходимое значение свойства для каждого из них. Например:
Задайте временное значение свойства для пользователя:
Set-User -Identity <UserIdentity> -StateOrProvince WA
Измените временное значение на необходимое:
Set-User -Identity <Identity> -StateOrProvince Washington
Как проверить, все ли получилось?
Чтобы убедиться, что список адресов успешно обновлен, замените <AddressListIdentity> именем списка адресов и выполните следующую команду в Exchange Online PowerShell, чтобы проверить значение свойства RecipientFilterApplied:
Get-AddressList -Identity <AddressListIdentity> | Format-Table Name,RecipientFilterApplied -Auto
Изменение списков адресов с помощью Exchange Online PowerShell
Доступны те же основные параметры, что и при создании списка адресов. Дополнительные сведения см. в разделе Создание списков адресов с помощью Exchange Online PowerShell.
Чтобы изменить существующий список адресов, используйте следующую синтаксическую конструкцию:
Set-AddressList -Identity <AddressListIdentity> [-Name <Name>] [<Precanned recipient filter | Custom recipient filter>] [-RecipientContainer <OrganizationalUnit>]
При изменении значений условного параметра можно использовать следующий синтаксис для добавления или удаления значений, не затрагивая другие существующие значения: @{Add="<Value1>","<Value2>"...; Remove="<Value1>","<Value2>"...}
.
В этом примере изменяется существующий список адресов с именем "Юго-Восточные офисы", добавляя значение штата или провинции TX (Техас) в предканированный фильтр получателей.
Set-AddressList -Identity "Southeast Offices" -ConditionalStateOrProvince @{Add="TX"}
Подробные сведения о синтаксисе и параметрах см. в разделе Set-AddressList.
Как проверить, все ли получилось?
Чтобы убедиться, что список адресов успешно изменен, замените <AddressListIdentity> путем\name списка адресов и выполните следующую команду в Exchange Online PowerShell, чтобы проверить значения свойств:
Get-AddressList -Identity "<AddressListIdentity>" | Format-List Name,RecipientFilterType,RecipientFilter,IncludedRecipients,Conditional*
Удаление списков адресов с помощью Exchange Online PowerShell
Чтобы удалить список адресов, используйте следующий синтаксис:
Remove-AddressList -Identity "<AddressListName>"
В этом примере показано, как удалить список адресов "Отдел продаж", который не содержит дочерних списков адресов.
Remove-AddressList -Identity "Sales Department"
Подробные сведения о синтаксисе и параметрах см. в разделе Remove-AddressList.
Как проверить, все ли получилось?
Чтобы убедиться, что список адресов успешно удален, выполните следующую команду в Exchange Online PowerShell, чтобы убедиться, что список адресов отсутствует в списке:
Get-AddressList
Скрытие получателей в списках адресов
Скрытие получателя из списков адресов не препятствует получателю получать сообщения электронной почты; она не позволяет пользователям найти получателя в списках адресов. Получатель скрыт во всех списках адресов и в общих адресных книгах (фактически он является исключением в фильтрах получателей во всех списках адресов). Если вы хотите выборочно включить получателя в определенные списки адресов и не включать в другие, вам необходимо настроить фильтры получателей в списках адресов таким образом, чтобы включить или исключить получателя.
Скрытие получателя из списков адресов также может препятствовать поиску пользователей в адресной книге. Например, (распознавание голоса службы автосекретаря) [/microsoftteams/dial-voice-reference] не сможет найти и перенаправить вызовы этому получателю.
Использование нового EAC для скрытия получателей из списков адресов
Сведения об открытии нового центра администрирования Exchange см. в разделе Центр администрирования Exchange в Exchange Online.
Вы не можете использовать новый EAC для скрытия групп Microsoft 365 из списков адресов.
В новом EAC перейдите в одно из следующих расположений в зависимости от типа получателя:
Получателей>Почтовые ящики: почтовые ящики пользователей.
Получателей>Группы: группы рассылки, группы безопасности с поддержкой почты и динамические группы рассылки.
Получателей>Ресурсы: почтовые ящики помещений и оборудования.
Получателей>Контакты: почтовые пользователи и почтовые контакты.
Общедоступные папки>Общедоступные папки: общедоступные папки с поддержкой почты.
Выберите получателя, которого нужно скрыть из списков адресов.
Откроется окно свойств получателя. Дальнейшие действия зависят от типа получателя:
Почтовые ящики. На вкладке Учетная запись выберите Управление контактными данными. Затем выберите Скрыть из глобального списка адресов.
Группы. На вкладке Параметры выберите Скрыть эту группу в списке глобальных адресов.
Ресурсы. Щелкните карандаш и выберите Скрыть из списков адресов (GAL).
Контакты. Выберите Скрыть это из глобального списка адресов.
Общедоступные папки: на вкладке Общие свойства почты нажмите Не отображать в списке адресов Exchange.
По завершении нажмите Сохранить.
Использование Exchange Online PowerShell для скрытия получателей из списков адресов
Чтобы скрыть получателя из списков адресов, используйте следующий синтаксис:
Set-<RecipientType> -Identity <RecipientIdentity> -HiddenFromAddressListsEnabled $true
<RecipientType> является одним из следующих значений:
DistributionGroup
DynamicDistributionGroup
Mailbox
MailContact
MailPublicFolder
MailUser
UnifiedGroup
В этом примере группа рассылки с именем Internal Affairs скрывается из списков адресов.
Set-DistributionGroup -Identity "Internal Affairs" -HiddenFromAddressListsEnabled $true
В этом примере почтовый ящик michelle@contoso.com скрывается из списков адресов.
Set-Mailbox -Identity michelle@contoso.com -HiddenFromAddressListsEnabled $true
Примечание. Чтобы получатель снова отображался в списках адресов, используйте значение $false
параметра HiddenFromAddressListsEnabled .
Как проверить, все ли получилось?
Вы можете убедиться, что получатель успешно скрыт из списков адресов, выполнив любую из следующих процедур:
В EAC выберите получателя, нажмите кнопку Изменить ( и убедитесь, что выбран параметр Скрыть из списков адресов.
В Exchange Online PowerShell выполните следующую команду и убедитесь, что указан получатель:
Get-Recipient -ResultSize unlimited -Filter 'HiddenFromAddressListsEnabled -eq $true'
Откройте глобальный список адресов в Outlook или Outlook в Интернете (прежнее название — Outlook Web App) и убедитесь, что получатель не отображается.