Active-Directory

在 Exchange GAL 中隱藏沒有電子郵件地址的使用者

  • November 19, 2019

我的活動目錄中有一些沒有電子郵件地址的使用者帳戶,例如管理員使用者、服務使用者等。

我在 Exchange 2013 的全域地址列表中找到了它們,如何刪除它們?我只想給使用者留下電子郵件地址。

這是我使用Get-GlobalAddressList命令檢查的目前設置(我認為這是預設設置):

RecipientFilter              : ((Alias -ne $null) -and (((((((((((ObjectClass -eq 'user') -or (ObjectClass -eq 'contact'))) -or (ObjectClass -eq 'msExchSystemMailbox'))) -or (ObjectClass -eq 'msExchDynamicDistributionList'))) -or (ObjectClass -eq 'group'))) -or (ObjectClass -eq'publicFolder'))))
LdapRecipientFilter          : (&(mailNickname=*)(|(objectClass=user)(objectClass=contact)(objectClass=msExchSystemMailbox)(objectClass=msExchDynamicDistributionList)(objectClass=group)(objectClass=publicFolder)))
LastUpdatedRecipientFilter   : ((Alias -ne $null) -and (((((((((((ObjectClass -eq 'user') -or (ObjectClass -eq  'contact'))) -or (ObjectClass -eq 'msExchSystemMailbox'))) -or (ObjectClass -eq  'msExchDynamicDistributionList'))) -or (ObjectClass -eq 'group'))) -or (ObjectClass -eq 'publicFolder'))))

通常,沒有 Exchange 屬性的使用者不應該出現在 GAL 中(在這裡顯示它們也沒有意義)。所以有多種選擇:

1.) 如果使用者是交換使用者,您可以簡單地從 GAL 中隱藏它。每個 AD 對像中都有一個選項,您可以通過 Exchange GUI 設置它(更多資訊在這裡)。通過這種方式,您可以排除您不希望出現在 GAL 中的使用者。

在此處輸入圖像描述

2.) 我看到一些管理員複製 AD 對象,然後執行一些“黑客”以刪除他們不需要的屬性。如果使用者啟用了 Exchange 郵件,那麼這不是一個好的選擇,例如以下屬性 showInAddressBook、msExchHideFromAddressLists、msExchHomeServerName、msExchUserAccountControl 可能不會被刪除,因此可能會導致您遇到此類問題,因為系統仍將它們發現為有效的 Exchange 使用者。因此,如果這些帳戶是手動複製的,請確保這些帳戶沒有 Exchange 屬性。

3.) GAL 過濾器開箱即用(取自 Exchange 2016):

(別名 -ne $null -and (ObjectClass -eq ‘user’ -or ObjectClass -eq ‘contact’ -or ObjectClass -eq ‘msExchSystemMailbox’ -or ObjectClass -eq ‘msExchDynamicDistributionList’ -or ObjectClass -eq ‘group’ -or ObjectClass -eq ‘publicFolder’))

這意味著只有擁有 Exchange 郵箱的使用者才會添加到 GAL。但是,在您的環境中,這可能意味著已調整預設 GAL,或者您正在使用具有不同設置的其他創建的 GAL。您應該在這裡檢查過濾器並確保它是正確的並且排除了不應該在 GAL 中的使用者。

在此處輸入圖像描述

引用自:https://serverfault.com/questions/884979