變更從 SAP NetWeaver 輸出電子郵件的 Exchange Online 整合

從 SAP 後端傳送電子郵件是廣泛散發的標準功能,適用於使用案例,例如針對批次作業發出警示、SAP 工作流程狀態變更或發票散發。 許多客戶都使用 Exchange Server On-Premises 來建立設定。 移轉至 Microsoft 365Exchange Online 具有一組影響該設定的雲端原生方法。

本文說明從 NetWeaver 型 SAP 系統輸出到 Exchange Online 的電子郵件通訊設定。 這適用於 SAP ECC、S/4HANA、SAP RISE 受控系統,以及任何其他以 NetWeaver 為基礎的系統。

概觀

現有的實作依賴 SMTP 驗證和更高的信任關係,因為舊版 Exchange Server 內部部署可以接近 SAP 系統本身,並由客戶本身管理。 有了 Exchange Online,責任和連線架構就會改變。 Microsoft 提供 Exchange Online 做為軟體即服務供應項目,以從世界各地安全且有效地取用公用網際網路。

請遵循我們的標準指南,以了解想要透過 Microsoft 365 傳送電子郵件的「裝置」一般設定。

重要

從 2020 年起,Microsoft 針對新建立的 Microsoft 365 租用戶停用 Exchange Online 基本驗證。 此外,從 2020 年 10 月開始,沒有使用基本驗證功能的現有租用戶也會停用功能。 請參閱我們開發人員部落格,作為參考。

重要

SMTP 驗證豁免於基本驗證功能終止程序。 不過,這是您資產的安全性風險,因此我們建議對抗它。 請參閱我們 Exchange 小組的最新文章

重要

我們針對舊版通訊協定的 Exchange Server 文件說明 SMTP 的目前 OAuth 支援。

設定考量

由於 SMTP 驗證的終止例外狀況,我們將說明 SAP NetWeaver 支援四種不同的選項。 前三個與 Exchange Online 文件中所述的案例相互關聯。

  1. SMTP 驗證用戶端提交
  2. SMTP 直接傳送
  3. 使用 Exchange Online SMTP 轉送連接器
  4. 使用 SMTP 轉送伺服器作為至 Exchange Online 的媒介

為求簡單明瞭,我們只會參考其交易碼 SCOT 用於郵件伺服器設定的 SAP 連線管理工具

選項 1:SMTP 驗證用戶端提交

當您想要將郵件傳送給組織內外的人員時,請選擇此選項。

在 SCOT 中使用 SMTP 驗證端點 smtp.office365.com 將 SAP 應用程式直接連線至 Microsoft 365。

您必須具備有效的電子郵件地址,才能對 Microsoft 365 進行驗證。 使用 Microsoft 365 進行驗證的帳戶電子郵件地址會顯示為 SAP 應用程式的訊息寄件者。

SMTP 驗證的需求

  • SMTP 驗證:必須針對所使用的信箱啟用。 在 2020 年 1 月之後建立的組織會停用 SMTP 驗證,但可以針對每個信箱啟用。 如需詳細資訊,請參閱在 Exchange Online 中啟用或停用已驗證的用戶端 SMTP 提交 (SMTP 驗證)
  • 驗證:使用基本驗證 (只是使用者名稱和密碼) 從 SAP 應用程式傳送電子郵件。 如果組織刻意停用 SMTP 驗證,您必須使用下列選項 2、3 或 4。
  • 信箱:您必須擁有授權的 Microsoft 365 信箱,才能從中傳送電子郵件。
  • 傳輸層安全性 (TLS) :您的 SAP 應用程式必須能夠使用 TLS 1.2 版和更新版本。
  • 連接埠:需要連接埠 587 (建議) 或連接埠 25,且必須在您的網路上解除封鎖。 某些網路防火牆或網際網路服務提供者會封鎖連接埠,特別是連接埠 25,因為這是電子郵件伺服器用來傳送郵件的連接埠。
  • DNS:使用 DNS 名稱 smtp.office365.com。 請勿針對 Microsoft 365 伺服器使用 IP 位址,因為不支援 IP 位址。

如何在 Exchange Online 中啟用信箱的 SMTP 驗證

有兩種方式可在 Exchange Online 上啟用 SMTP 驗證:

  1. 針對覆寫全租用戶的設定或
  2. 在組織層級的每個信箱的單一帳戶。

注意

如果您的驗證原則停用 SMTP 的基本驗證,即使啟用本文中所述的設定,用戶端也無法使用 SMTP 驗證通訊協定。

啟用 SMTP 驗證的每個信箱設定可在 Microsoft 365 系統管理中心或透過 Exchange Online PowerShell 取得。

  1. 開啟 [Microsoft 365 系統管理中心],然後前往 [使用者]->[作用中使用者]。

    管理中心 - 作用中使用者

  2. 選取使用者,遵循精靈,按一下 [郵件]。

  3. 在 [電子郵件應用程式] 區段中,按一下 [管理電子郵件應用程式]。

    管理中心 - 管理電子郵件

  4. 驗證 [已驗證的 SMTP] 設定 (未核取 = 已停用,已核取 = 已啟用)

    管理中心 - SMTP 設定

  5. 儲存變更

這會針對您為 SCOT 所需的 Exchange Online 中該個別使用者啟用 SMTP 驗證。

使用 SCOT 設定 SMTP 驗證

  1. 從 SAP 應用程式伺服器的連接埠 587 上 Ping 或 Telnet smtp.office365.com,以確保連接埠已開啟且可存取。

    Ping 的螢幕擷取畫面

  2. 請確定已在執行個體設定檔中設定 SAP 網際網路通訊管理員 (ICM) 參數。 請參閱下面的範例:

    參數 (parameter) value
    icm/server-port-1 PROT=SMTP,PORT=25000,TIMEOUT=180,TLS=1
  3. 從 SMICM 交易重新啟動 ICM 服務,並確定 SMTP 服務使用中。

    ICM 設定的螢幕擷取畫面

  4. 在 SICF 交易中啟用 SAPConnect 服務。

    SICF 中的 SAP Connect 設定

  5. 前往 SCOT,然後選取 [SMTP 節點] (按兩下),如下所示以繼續進行設定:

    SMTP 組態

    使用連接埠 587 新增郵件主機 smtp.office365.com。 請檢查 Exchange Online 文件以取得參考。

    SMTP 組態 (續)

    按一下 [安全性] 欄位旁 的 [設定] 按鈕,即可視需要依照第 2 點所述的方式新增 TLS 設定和基本驗證詳細資料。 請確定已據此設定 ICM 參數。

    請務必使用有效的 Microsoft 365 電子郵件識別碼和密碼。 此外,它必須是您一開始為 SMTP 驗證啟用的相同使用者。 此電子郵件識別碼會顯示為寄件者。

    SMTP 安全性組態

    回到上一個畫面:按一下 [設定] 按鈕,然後核取 [支援的網址類別型] 下的 [網際網路]。 使用萬用字元 [*] 選項可允許將電子郵件傳送至所有網域,而不受限制。

    SMTP 位址類型

    SMTP 位址區域

    下一個步驟:在 SCOT 中設定預設網域。

    SMTP 預設網域

    SMTP 預設位址

  6. 排程作業以將電子郵件傳送至提交佇列。 從 SCOT 中選取 [傳送作業]:

    要傳送的 SMTP 排程作業

    需要時可提供作業名稱和變體。

    SMTP 排程作業變體

    使用交易碼 SBWP 測試郵件提交,並使用 SOST 交易檢查狀態。

SMTP 驗證用戶端提交的限制

  • SCOT 只會為一位使用者儲存登入認證,因此只能以這種方式設定一個 Microsoft 365 信箱。 透過個別 SAP 使用者傳送郵件需要實作 Microsoft 365 所提供的「傳送身分權限」。
  • Microsoft 365 會改善一些傳送限制。 如需詳細資訊,請參閱 Exchange Online 限制 - 接收和傳送限制

選項 2:SMTP 直接傳送

Microsoft 365 提供您設定從 SAP 應用程式伺服器直接傳送的功能。 此選項有限,因為它只允許將郵件路由傳送至您自己 Microsoft 365 組織中具有有效電子郵件地址的位址,因此無法用於外部收件者 (例如廠商或客戶)。

選項 3:使用 Microsoft 365 SMTP 轉送連接器

只有在下列情況下,才選擇此選項:

  • 您的 Microsoft 365 環境已停用 SMTP 驗證。
  • SMTP 用戶端提交 (選項 1) 與商務需求或 SAP 應用程式不相容。
  • 您無法使用直接傳送 (選項 2),因為您必須傳送電子郵件給外部收件者。

SMTP 轉送使得 Microsoft 365 可讓您使用以公用 IP 位址或 TLS 憑證設定的連接器,代表您轉送電子郵件。 相較於其他選項,連接器設定會增加複雜性。

SMTP 轉送的需求

  • SAP 參數:已設定 SAP 執行個體參數,並啟用 SMTP 服務,如選項 1 所述,請遵循<使用 SCOT 設定 SMTP 驗證>一節的步驟 2 到 4。
  • 電子郵件地址:任一 Microsoft 365 已驗證網域中的任何電子郵件地址。 此電子郵件地址不需要信箱。 例如: noreply@*yourdomain*.com
  • 傳輸層安全性 (TLS) :SAP 應用程式必須能夠使用 TLS 1.2 版和更新版本。
  • 連接埠:連接埠 25 必須在您的網路上解除封鎖。 因為誤用垃圾郵件的風險,某些網路防火牆或 ISP 會封鎖連接埠,特別是連接埠 25。
  • MX 記錄:您的郵件交換器 (MX) 端點,例如 yourdomain.mail.protection.outlook.com。 如需詳細資訊,請參閱下一節。
  • 轉送存取:必須有公用 IP 位址或 SSL 憑證,才能對轉送連接器進行驗證。 若要避免設定直接存取,建議使用來源網路翻譯 (SNAT),如本文所述。 適用於輸出連線的來源網路位址轉譯 (SNAT)

Microsoft 365 中 SMTP 轉送的逐步設定指示

  1. 取得端點的公用 (靜態) IP 位址,此位址將使用上述文章所列的其中一種方法傳送郵件。 不支援或允許動態 IP 位址。 您可以與其他裝置和使用者共用靜態 IP 位址,但請勿與公司外部的任何人共用 IP 位址。 請記下此 IP 位址以供稍後使用。

    在 Azure 入口網站上擷取公用 IP 的位置

注意

使用 SAP 應用程式伺服器的虛擬機器概觀來尋找上述 Azure 入口網站資訊。

  1. 登入 Microsoft 365 系統管理中心

    Microsoft 365 AC 登入

  2. 前往 [設定]- >[Domains],選取您的網域 (例如,contoso.com),然後尋找郵件交換器 (MX) 記錄。

    擷取網域 mx 記錄的位置

    郵件交換器 (MX) 記錄會有點位址或值的資料,類似 yourdomain.mail.protection.outlook.com

  3. 記下郵件交換器 (MX) 記錄的 點位址或值資料,我們將其稱為您的 MX 端點。

  4. 在 Microsoft 365 中,選取 [管理員],然後選取 [Exchange],前往新的 Exchange 系統管理中心。

    Microsoft 365 系統管理中心

  5. 新的 Exchange Admin Center (EAC) 入口網站將會開啟。

    Microsoft 365 系統管理中心信箱

  6. 在 Exchange Admin Center (EAC) 中,前往 [郵件流程]- >[Connectors]。 連接器畫面如下所述。 如果您使用傳統 EAC,請遵循我們的 文件中所述的步驟 8。

    Microsoft 365 系統管理中心連接器

  7. 按一下 [新增連接器]

    Microsoft 365 系統管理中心連接器新增

    選擇 [貴組織的電子郵件伺服器]。

    Microsoft 365 系統管理中心郵件伺服器

  8. 按一下 [下一步] 。 [連接器名稱] 畫面隨即出現。

    Microsoft 365 系統管理中心連接器名稱

  9. 提供連接器的名稱,然後按一下 [下一步]。 [驗證傳送的電子郵件] 畫面隨即出現。

    選擇 [驗證傳送伺服器的 IP 位址符合您組織專屬的任一 IP 位址],並在 Microsoft 365 區段中 SMTP 轉送的逐步設定指示步驟 1 中新增 IP 位址。

    Microsoft 365 系統管理中心驗證 IP

    檢閱並按一下 [建立連接器]。

    Microsoft 365 系統管理中心檢閱

    Microsoft 365 系統管理中心檢閱安全性設定

  10. 現在您已完成 Microsoft 365 設定,請移至網域註冊機構的網站來更新您的 DNS 記錄。 編輯寄件者原則架構 (SPF) 記錄。 包括您在步驟 1 中記錄的 IP 位址。 完成的字串看起來應該類似 v=spf1 ip4:10.5.3.2 include:spf.protection.outlook.com \~all,其中 10.5.3.2 是您公用 IP 位址。 略過此步驟可能會導致電子郵件標示為垃圾郵件,最後會出現在收件者的 [垃圾郵件] 資料夾中。

SAP 應用程式伺服器的執行步驟

  1. 請確定已啟動 SAP ICM 參數和 SMTP 服務,如選項 1 (步驟 2-4) 所示
  2. 前往 SMTP 節點中的 SCOT 交易,如選項 1 的先前步驟所示。
  3. 將郵件主機新增為郵件交換器 (MX) 記錄值,如步驟 4 中所記錄 (亦即 yourdomain.mail.protection.outlook.com)。

SCOT 中的 SMTP 組態

郵件主機:yourdomain.mail.protection.outlook.com

連接埠:25

  1. 可能的話,按一下 [安全性] 欄位旁的 [設定],並確定啟用 TLS。 此外,請確定沒有關於 SMTP 驗證的先前登入資料存在。 否則,請使用下方對應的按鈕刪除現有的記錄。

    SCOT 中的 SMTP 安全性組態

  2. 使用 SAP 應用程式與交易 SBWP 的測試電子郵件測試組態,並檢查 SOST 交易中的狀態。

選項 4:使用 SMTP 轉送伺服器作為到 Exchange Online 的中繼

中繼轉寄伺服器可以是從 SAP 應用程式伺服器直接連線到 Microsoft 365 的替代方案。 此伺服器可以依據允許直接驗證和轉寄服務的任何郵件伺服器。

此解決方案的優點是,它可以部署在 Azure 環境內的中樞輪輻虛擬網路中樞或 DMZ 內,以保護 SAP 應用程式主機避免直接存取。 它也允許集中式輸出路由,以在從多個應用程式伺服器傳送時,立即將所有郵件流量卸載到中央轉送。

組態步驟與 Microsoft 365 SMTP 轉送連接器 (選項 3) 相同,唯一的差異在於 SCOT 組態應該參考將執行轉送的郵件主機,而不是導向至 Microsoft 365。 根據用於轉寄的郵件系統,它也會設定為使用其中一個支援的方法和具有密碼的有效使用者,直接連線到 Microsoft 365。 建議您直接從轉送傳送測試郵件,以確保它可以在完成 SAP SCOT 組態和測試之前,與 Microsoft 365 順利通訊。

轉送伺服器架構

顯示的範例架構說明中樞內具有單一郵件轉寄主機的多個 SAP 應用程式伺服器。 根據要傳送的郵件量,建議遵循詳細的調整大小指南,讓郵件廠商作為轉送使用。 這可能需要能使用 Azure Load Balancer 運作的多個郵件轉寄主機。

後續步驟

了解使用 Azure Twilio 進行大宗郵件處理 - SendGrid

了解 Exchange Online 服務限制 (例如附件大小、郵件限制、節流等)