從 Microsoft Exchange 擷取電子郵件地址

從 Microsoft Exchange 擷取電子郵件地址

我們有一個 Microsoft Exchange 伺服器,其中包含所有 Active Directory 使用者的大量電子郵件地址資訊。提取該電子郵件清單以便我可以將其附加到 Active Directory 的使用者帳戶的最佳方法是什麼。 (我知道如何匯入到 AD 中)我只是不知道如何在沒有 Exchange Management Shell 的情況下從 Microsoft Exchange 匯出資訊。

我無權訪問 Exchange Management Shell,也不知道如何取得它。我在想有某種方法可以透過 Power-Shell/C# 來做到這一點,但老實說,我不確定我會呼叫什麼來開始。有誰有任何想法,甚至是我可以閱讀的內容來開始使用?

答案1

Exchange 管理 shell 只是載入了 Microsoft.exchange 模組/設定的 powershell。您可以使用 powershell 透過以下連結中的命令來存取 Exchange;

https://docs.microsoft.com/en-us/powershell/exchange/exchange-eop/connect-to-exchange-online-protection-powershell?view=exchange-ps

當我不需要進入郵件伺服器但必須確保啟用 PSRemoting 並且需要在連結中詳細設定一些其他先決條件時,我經常使用此功能。您可能必須根據 AD 身份驗證的設定方式切換身份驗證方法(Kerberos/basic 是最常見的)

除此之外,您可以在「收件者設定」->「信箱」區段中從 Exchange 匯出列表,右側窗格中有一個匯出清單功能。這會匯出顯示名稱、OU、郵箱類型、電子郵件地址等,然後您應該能夠以您喜歡的方式對其進行格式化,但它不像powershell 方法那樣精細,您可以在powershell 方法中準確指定您想要的內容出口。

此外,如果您可以為使用者電子郵件地址定義邏輯,則可以使用 powershell 腳本將電子郵件地址匯入至 AD(如果它遵循一致的格式,例如:[電子郵件受保護],所以用這種方法甚至不需要接觸郵件伺服器。如果是這種情況,您需要使用 ForEach 物件導入,然後查詢 AD 來提取每個名字、姓氏,然後將這些字串連接到導入函數中以顯示「$Firstname, $Surname」@company.co。將循環遍歷每個使用者並使用Set-ADUser cmdlet 應用電子郵件地址。

答案2

如果您可以造訪 Exchange 管理中心,您也可以從 EAC 匯出 SMTP 電子郵件地址,這將提供用於匯出資料的 UI。

在此輸入影像描述

在此輸入影像描述

相關內容