管理 Exchange Online 中的地址列表

Exchange Online
 

适用于:Exchange Online

上一次修改主题:2016-03-08

地址列表是组织中已启用邮件的对象集合。已启用邮件的对象是指组织中拥有电子邮件地址的任何对象。每个地址列表可以包含一个或多个类型的对象(例如用户、联系人、组、公用文件夹以及会议室和设备邮箱)。地址列表还提供了一种为特定用户组区分已启用邮件的对象的方法。本主题介绍如何管理 Exchange Online 中的地址列表。

有关地址列表的更多管理任务,请参阅 Exchange Online 中的地址列表过程

是否要了解本主题的 Exchange 2013 版本?请参阅创建地址列表

  • 估计完成每个步骤时间:5 分钟。

  • 只能使用命令行管理程序执行此过程。若要了解如何使用 Windows PowerShell 连接到 Exchange Online,请参阅连接到 Exchange Online PowerShell

  • 在 Exchange Online 中,*-AddressList cmldet 仅在地址列表管理角色中可用。默认情况下,在 Exchange Online 中,地址列表角色不会分配给任何角色组。若要使用需要地址列表角色的任意 cmdlet,您需要向角色组添加此角色。有关详细信息,请参阅管理角色组主题中的“向角色组添加角色”部分。

  • 若要了解可能适用于此主题中过程的键盘快捷键,请参阅 Exchange 管理中心内的键盘快捷键

提示提示:
有疑问吗?请在 Exchange 论坛中寻求帮助。请访问以下论坛:Exchange ServerExchange OnlineExchange Online Protection

此示例使用 RecipientFilter 参数创建地址列表名为“Oregon 和 Washington 用户”的地址列表,包括作为邮箱用户的收件人,并将 StateOrProvince 设置为 WashingtonOregon

New-AddressList -Name "Oregon and Washington" -RecipientFilter {((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'Washington') -or (StateOrProvince -eq 'Oregon')))}

此示例使用内置条件在 All Rooms 父容器中创建 Building 34 Meeting Rooms 子地址列表。

New-AddressList -Name "Building 34 Meeting Rooms" -Container "\All Rooms" -IncludedRecipients Resources -ConditionalCustomAttribute1 "Building 34"

有关语法和参数的详细信息,请参阅 New-AddressList

Update-AddressList cmdlet 在 Exchange Online 中不可用。如果应显示在地址列表中的用户不出现,请将这些用户所需的属性值改为临时值,再更改回地址列表所需的值。您可以在 EAC 或 PowerShell 中更新用户属性值,但在 PowerShell 中可以更快地执行批量操作。

例如,假设名为“Oregon 和 Washington 用户”的地址列表使用筛选器 {((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'Washington') -or (StateOrProvince -eq 'Oregon')))}但地址列表不包括 StateOrProvince 属性值设置正确的所有人。若要更新地址列表,请按照以下步骤操作:

  1. 使用地址列表中的查询来查找应在地址列表中显示的所有用户。例如:

    $Before = Get-User -Filter {((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'Oregon') -or (StateOrProvince -eq 'Washington')))} -ResultSize Unlimited
    
  2. 将所需的属性更改为临时值。例如,将 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}
    
  3. 通过使用临时属性值再次找到那些相同的用户。例如:

    $After = Get-User -Filter {((RecipientType -eq 'UserMailbox') -and ((StateOrProvince -eq 'OR') -or (StateOrProvince -eq 'WA')))} -ResultSize Unlimited
    
  4. 将临时值更改回所需的值。例如,将 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}
    

注意:

  • 某些属性可能需要 Get-UserSet-User cmdlet,而其他属性则需要 Get-MailboxSet-Mailbox cmdlet(例如, CustomAttribute1-15)。有关详细信息,请参阅下列主题:

  • 前面的示例中显示的是最坏的情况,即地址列表中不出现任何人。如果只有少量用户未显示在地址列表中,您可以修改每个用户所需的属性值。例如:

    1. 为该用户设置一个临时的属性值:

      Set-User <Identity> -StateOrProvince WA
      
    2. 将临时值更改回所需的值:

      Set-User <Identity> -StateOrProvince Washington
      

本示例删除地址列表“Sales Department”,它不包含子地址列表。

Remove-AddressList -Identity "Sales Department"

键入 Y 确认要删除该地址列表,然后按 Enter 键。

有关语法和参数的详细信息,请参阅 Remove-AddressList

 
显示: