電子郵件連接器 (Email connectors)
電子郵件連接器 (Email connector) 可將你的電子郵件發送服務整合至 Logto,實現透過電子郵件進行安全的使用者驗證。設定完成後,你可以發送 一次性密碼 (OTP, one-time passwords) 用於使用者 註冊、登入、重設密碼、帳號連結、成員邀請 以及 高風險操作驗證。
選擇你的電子郵件連接器
Logto 提供三種電子郵件連接器選項:
免費 Logto 電子郵件服務(僅限 Cloud)
這個內建電子郵件服務選項非常適合快速開始,無論是 測試 或 正式環境 都適用。它免除第三方整合需求,並提供免費且可靠的郵件發送。你只需自訂基本品牌設定,即可套用預設設計的郵件模板。
Logto Email Service 連接器現已支援品牌自訂功能,包括 Logo、公司資訊與寄件人名稱。
然而,雖然方便,仍有部分限制需注意 —— 你無法自訂寄件人電子郵件地址、網域或郵件內容細節。
Logto Email Service 官方連接器。
主流電子郵件服務供應商
透過 Logto 的逐步指引,連接你偏好的電子郵件服務供應商(ESP)。
這些選項允許你完全 自訂郵件模板、寄件人名稱、加入變數等,以最佳化你的品牌體驗。
我們現成支援以下電子郵件服務供應商:
AWS 直郵服務的 Logto 官方連接器。
Mailgun 郵件服務的 Logto 官方連接器。
SendGrid 郵件服務的 Logto 官方連接器。
阿里雲直郵服務的 Logto 官方連接器。
Postmark 郵件服務的 Logto 連接器。
自訂你的電子郵件連接器
若上述方案皆無法滿足你的需求,你也可以選擇透過簡單郵件傳輸協定(SMTP, Simple Mail Transfer Protocol)連接你想要的電子郵件服務。
SMTP 的 Logto 官方連接器。
如果你已有自有郵件服務且不適用 SMTP 連線,我們也提供「HTTP 電子郵件連接器」。
當需要發送郵件時,Logto 會向你設定的 endpoint 發送 API 請求,以完成依賴郵件的驗證流程。請注意,為避免驗證流程錯誤,設定的 endpoint 在收到 WebHook 後需回傳 200 回應,告知 Logto 已收到發送郵件的通知。在這種情況下,你需自行監控郵件服務以確保郵件成功送達。
HTTP 郵件的 Logto 官方連接器。
若我們的標準連接器無法滿足你的特殊需求,歡迎 聯絡我們。若你是 OSS 使用者,且需求緊急,也可 自行實作連接器 (OSS)。我們也非常歡迎 貢獻;你的努力也許能幫助其他有相同需求的社群成員。
設定步驟
請依下列步驟新增電子郵件連接器:
- 前往 Console > 連接器 > 電子郵件與簡訊連接器。
- 點擊「設定」按鈕,選擇你想要的電子郵件服務供應商以新增連接器。
- 依照 README 文件逐步設定你選擇的服務供應商。
- 點擊「儲存並完成」以完成設定。
為確保重要郵件(如驗證碼)能可靠送達使用者收件匣並避免進入垃圾郵件,請重點關注兩大優先事項:
- 設定郵件驗證(SPF、DKIM、DMARC)
郵件服務商(Gmail、Outlook 等)會用這些協議驗證你不是垃圾郵件發送者。若未設定,郵件可能進垃圾郵件夾或被拒收。
- SPF(寄件人政策框架):列出允許為你網域發信的伺服器 / IP。
- DKIM(網域金鑰識別郵件):為郵件加上數位簽章,證明郵件未被竄改。
- DMARC(基於網域的郵件驗證):告知收件方如何處理 SPF / DKIM 驗證失敗的郵件。
- 分離驗證 (Authentication) 郵件與行銷郵件
行銷郵件常引發垃圾郵件投訴或高退信率。若驗證郵件與行銷郵件共用同一網域 / IP,會影響驗證郵件的送達率。
- 使用專屬網域:驗證郵件用
@auth.yourdomain.com,行銷郵件用@marketing.yourdomain.com。 - 專屬 IP:為驗證郵件申請獨立 IP,並逐步暖機。
- 寄件人地址一致:確保寄件人網域與 SPF / DKIM / DMARC 記錄一致。
- 使用專屬網域:驗證郵件用
更換電子郵件連接器
你會發現僅能新增一個電子郵件連接器。
當你已有電子郵件連接器時,只能選擇「更換電子郵件連接器」。在 Console 執行此操作時,儲存後會立即生效,請務必先測試你的設定再儲存。
為確保服務穩定,Cloud 用戶可建立 開發租戶 作為開發環境。測試設定無誤後,再將設定「遷移」至 正式環境 並儲存。
啟用電子郵件於終端使用者流程
新增並設定電子郵件連接器後,你可以啟用基於電子郵件的驗證流程:
- 設定註冊方式:前往 登入與帳號 > 註冊與登入。在註冊區塊新增「電子郵件地址」或「電子郵件地址或手機號碼」作為識別項。注意:註冊時必須驗證電子郵件地址。
- 設定登入方式:在登入區塊新增「電子郵件地址」作為登入方式。可選擇密碼或郵件驗證碼進行驗證。點擊「新增其他」以增加選項。
- 設定忘記密碼:若啟用密碼登入,登入區塊會顯示「忘記密碼」設定。啟用「郵件驗證碼」即可讓使用者透過郵件重設密碼。
- 設定郵件作為 MFA:前往 Console > 多重要素驗證。啟用「郵件驗證碼」作為第二驗證因素以提升安全性。
- 設定帳號管理:使用 Account API 自訂你的帳號中心,讓使用者管理自己的電子郵件地址。
由於我們的設定會立即生效,刪除現有電子郵件連接器可能影響終端使用者的正常登入與註冊流程。
例如,若登入識別項包含「電子郵件 + 驗證碼」組合,刪除現有電子郵件連接器後,使用者將無法收到郵件驗證碼,登入流程將發生錯誤。
請操作連接器時務必留意潛在風險。
常見問題
如何自訂郵件寄件人名稱?
我們仍在持續開發更多連接器。如果你有進階需求,歡迎在 Discord 告訴我們,並於 GitHub 提交功能需求。如果需要進一步協助,也可 透過電子郵件聯絡我們。
對於貢獻者,我們提供易於擴充的連接器開發方式,讓你能根據自身情境 自訂開發連接器。歡迎隨時向 Logto 提交 pull request,讓更多社群成員受益。
如何限制 Logto 電子郵件連接器的郵件請求 IP?
一種解法是使用 Logto HTTP 電子郵件連接器。
你可以在自己的伺服器上實作一個 API endpoint,該 endpoint 呼叫相關郵件服務,並透過 Logto 的 HTTP 電子郵件連接器 觸發這個 API。如此一來,你可完全控管 API endpoint 的 IP,並將對應 IP 加入郵件服務供應商的白名單設定。