管理 Exchange Online 中的地址清單

地址清單是 Exchange Online 中已啟用郵件的收件者物件的集合。 地址清單基於收件者篩選。 如需通訊清單的詳細資訊,請參閱Exchange Online中的通訊清單

如需與管理通訊清單相關的其他管理工作,請參閱 地址清單 Exchange Online 中的程序

在尋找此主題的 Exchange Server 版本? 請參閱 建立通訊清單

開始之前有哪些須知?

  • 每項程序的預估完成時間:5 分鐘。

  • 根據預設,地址清單角色不會指派給Exchange Online中的任何角色群組。 若要使用任何需要「通訊清單」角色的指令程式,您需將此角色新增至角色群組。 如需詳細資訊,請參閱 修改角色群組

  • 您只能使用 Exchange Online PowerShell 來執行本主題中幾乎所有的程式, (除了將收件者從通訊清單中隱藏) 之外的所有專案。 若要連線至 Exchange Online PowerShell,請參閱連線至 Exchange Online PowerShell

提示

有問題嗎? 在 Exchange 論壇中尋求協助。 請造訪論壇:Exchange OnlineExchange Online Protection

使用 Exchange Online PowerShell 建立地址清單

您建立的地址清單可以有收件者篩選也可以沒有。 如需收件者篩選器的詳細資訊,請參閱PowerShell Exchange Online地址清單的收件者篩選

若要新增地址清單,請使用下列語法:

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"

此範例會建立具有自訂收件者篩選器的通訊清單:

  • 名稱:美國北部主管

  • 位置:在名為 北美洲 的現有通訊清單底下。

  • 自訂收件者篩選:具有 [ 標題 ] 值包含 [目錄] 或 [管理員] 且 [州或省 ] 值為 [WA]、[OR] 或 [識別碼] ([華盛頓州]、[華盛頓州] 或 [Idaho]) 的信箱的所有使用者。

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

此範例會使用 RecipientFilter 參數建立名稱為馬勒勒及華盛頓州使用者的通訊清單,並包含信箱使用者且 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

如何知道這是否正常運作?

若要確認您已成功建立通訊清單,請將AddressListIdentity > 取代 <為地址清單的 ame\n路徑,然後在 Exchange Online Powershell 中執行下列命令以驗證屬性值:

Get-AddressList -Identity "<AddressListIdentity>" | Format-List Name,RecipientFilterType,RecipientFilter,IncludedRecipients,Conditional*

使用 Exchange Online Powershell 來檢視通訊清單的成員

技術上來說,此程式會傳回 所有 收件者 (包括符合地址清單之收件者篩選準則的隱藏收件者) 。 地址清單中實際顯示的收件者具有 HiddenFromAddressListsEnabled 屬性值 False

若要檢視通訊清單的成員,請使用下列語法:

$<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\Southeast 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 更新通訊清單

Exchange Online PowerShell 中沒有可用的 Update-AddressList Cmdlet (或 Update-GlobalAddressList)。 如果應該顯示通訊清單的收件者沒有,您必須將這些使用者的必要屬性值變更為暫存值,然後再變更回地址清單所需的值。 您可以在 Exchange 系統管理中心 (EAC) 或Exchange Online PowerShell 中更新使用者屬性值,但是在 PowerShell 中執行大量作業會更快。

例如,假設名為「馬勒勒及華盛頓州使用者」的通訊清單使用篩選 "((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。 CustomAttribute1 到 CustomAttribute15 的屬性需要 Get-MailboxSet-Mailbox Cmdlet。 如需哪些 Cmdlet 可用屬性的詳細資訊,請參閱下列主題:

  • 如果只有少數使用者未出現在地址清單中,您可以修改每個使用者所需的屬性值。 例如:

    1. 設定使用者的暫時屬性值:

      Set-User -Identity <UserIdentity> -StateOrProvince WA
      
    2. 將暫時值變更回所需的值:

      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 > 取代 <為地址清單的 ame\n路徑,然後在 Exchange Online Powershell 中執行下列命令來驗證屬性值:

Get-AddressList -Identity "<AddressListIdentity>" | Format-List Name,RecipientFilterType,RecipientFilter,IncludedRecipients,Conditional*

使用 Exchange Online PowerShell 刪除地址清單

若要移除地址清單,請使用下列語法:

Remove-AddressList -Identity "<AddressListName>"

此範例會移除通訊清單 Sales Department,其中不包含子通訊清單。

Remove-AddressList -Identity "Sales Department"

如需詳細的語法及參數資訊,請參閱 Remove-AddressList

如何知道這是否正常運作?

若要確認您已成功移除通訊清單,請在 Exchange Online Powershell 中執行下列命令,以確認地址清單未列出:

Get-AddressList

隱藏地址清單中的收件者

從通訊清單中隱藏收件者並不會防止收件者接收電子郵件訊息;它會防止使用者在通訊清單中尋找收件者。 收件者會隱藏「所有」地址清單和 CAL (實際上,它們是所有通訊清單中收件者篩選的例外)。 如果只想在某些地址清單中包括某些收件者,您需要調整地址清單中收件者篩選,以包括或排除收件者。

使用新的 EAC 來隱藏地址清單中的收件者

若要開啟新的 EAC,請參閱Exchange Online 中的 Exchange 系統管理中心

您無法使用新的 EAC 來隱藏地址清單中的 Microsoft 365 群組。

  1. 在新的 EAC 中,根據收件者類型移至下列其中一個位置:

    • 收件者>信箱:使用者信箱。

    • 收件者>群組:通訊群組、擁有郵件功能的安全性群組和動態通訊群組。

    • 收件者>資源:會議室和設備信箱。

    • 收件者>連絡人:郵件使用者和郵件連絡人。

    • 公用資料夾>公用資料夾:啟用郵件功能的公用資料夾。

  2. 選取您要從通訊清單中隱藏的收件者。

  3. 收件者屬性視窗會開啟。 接下來的操作取決於收件者的類型:

    • 信箱:在 [ 帳戶] 索引 標籤上,選取 [ 管理連絡人資訊]。 然後選取 [從全域通訊清單隱藏]

    • 群組:在 [ 設定] 索引卷 標上,從全域通訊清單中選取 [ 隱藏此群組]

    • 資源:按一下鉛筆,然後選 取 [在 GAL) (地址清單中 隱藏。

    • 連絡人:從 全域通訊清單中選取 [隱藏此專案]

    • 公用資料夾:在 [一般郵件屬性] 索引標籤,選取 [在 Exchange 地址清單中隱藏]

  4. 完成後,點擊 [儲存]

使用 Exchange Online PowerShell 從通訊清單中隱藏收件者

若要從通訊清單中隱藏收件者,請使用下列語法:

Set-<RecipientType> -Identity <RecipientIdentity> -HiddenFromAddressListsEnabled $true

< RecipientType >是下列其中一個值:

  • DistributionGroup

  • DynamicDistributionGroup

  • Mailbox

  • MailContact

  • MailPublicFolder

  • MailUser

  • UnifiedGroup

本範例會從通訊清單中隱藏名為內部事務部的通訊群組。

Set-DistributionGroup -Identity "Internal Affairs" -HiddenFromAddressListsEnabled $true

本範例會隱藏地址清單中的信箱 michelle@contoso.com 。

Set-Mailbox -Identity michelle@contoso.com -HiddenFromAddressListsEnabled $true

注意:若要讓收件者再次顯示在通訊清單中,請使用HiddenFromAddressListsEnabled參數的值 $false

如何知道這是否正常運作?

您可以使用下列任何程式,確認您已成功從通訊清單中隱藏收件者:

  • 在 EAC 中,選取收件者,按一下 [ 編輯 (編輯] 圖示。) 並確認已選取 [隱藏地址清單] 設定。

  • 在 Exchange Online PowerShell 中,執行下列命令並確認收件者已列出:

    Get-Recipient -ResultSize unlimited -Filter 'HiddenFromAddressListsEnabled -eq $true'
    
  • 在 Outlook 或Outlook 網頁版 (中開啟 GAL,先前稱為 Outlook Web App) ,並確認收件者不可見。