在部署或維護 Microsoft 365 郵件服務的過程中,許多技術人員或開發者可能曾因 "應用程式密碼(App Password)" 而陷入長時間測試與除錯的迴圈。這篇文章希望從中立的角度,釐清 App Password 的實際功能限制,避免大家重複走過不必要的彎路。
Microsoft 原意是提供過渡期的相容方案,並非長期使用建議。
請特別注意:App Password 僅支援收信, 完全不支援 SMTP 發信。這是最容易誤判的重點。
許多人在使用 App Password 結合 SMTP 發信時會遭遇如下錯誤:
535 5.7.3 Authentication unsuccessful
這並非密碼錯誤,而是 Microsoft 明確不支援使用 App Password 登入 SMTP(smtp.office365.com)。即使在管理中心開啟 SMTP AUTH 設定,也無法繞過這一限制。
這點在 Microsoft 官方文件中有清楚說明(參考來源於文末),但在實際設定介面中缺乏明確提示,導致使用者誤以為 SMTP 也是可用場景之一。
坦白說,會。
使用者看到可以產生 App Password,直覺會認為這是一組可以讓應用完整收發信的密碼,卻在實作 SMTP 時失敗。這樣的體驗會讓使用者以為自己設定錯誤、密碼錯誤、權限不足,進而浪費時間進行交叉測試與錯誤診斷。
從安全演進的角度來看,這是合理的政策取向。但從產品體驗角度來看,若能在產生 App Password 的介面註明其適用協議範圍,將大幅減少混淆。
若你需要使用 SMTP 發信,請考慮以下方案:
sendMail
功能App Password 是一個在雲端轉型過程中被引入的妥協方案,最初的設計是合理的。但隨著 Microsoft 365 架構趨於完整,支援 OAuth2 幾乎成為所有應用的基本要求。
這篇文章希望能幫助你釐清 App Password 的定位,避免浪費不必要的設定時間,並順利將系統架構導向更穩定與現代的驗證方式。
提醒:各郵件客戶端需為最新版,並正確設定為 OAuth 模式,才能正常通過驗證與授權流程。