使用 OAuth2 將 Gmail 或 Microsoft 365 連接到 Nextcloud Mail
使用 Gmail 或 Microsoft 365 為 Nextcloud Mail 設定 OAuth2,驗證接收和傳送,並解決常見的同意和 SMTP 失敗問題。
若要使用 OAuth2 將 Gmail 或 Microsoft 365 連接到 Nextcloud Mail,請先向郵件提供者註冊一個 Web 應用程序,將 Nextcloud Mail 的重定向 URI 複製到該註冊資訊中,並將客戶端 ID 和金鑰保存在 Nextcloud 的群組管理設定中。然後在郵件應用程式中連接郵箱,並批准提供者的登入提示。成功的設定必須能夠載入收到的郵件並發送測試郵件,而不僅僅是顯示授權成功的畫面。
Nextcloud Mail 使用 IMAP 協定讀取郵件,使用 SMTP 協定傳送郵件。 OAuth2 從身分提供者取得授權;XOAUTH2 是郵件用戶端用來提供這些郵件服務存取權杖的機制。它並不能將 Nextcloud 登入轉換為適用於所有郵件伺服器的通用單一登入。
Nextcloud 目前的管理文件詳細介紹了 Gmail OAuth 和 Microsoft Outlook XOAUTH2 的整合。 Microsoft 支援是在 Mail 3.0.0 版本中新增的;選單措詞可能會因 Mail 和 Nextcloud 版本而異。本指南基於Nextcloud 35 Mail 管理手冊,截至 2026 年 10 月為最新版本。
重要限制: Nextcloud Mail 的 Gmail/Microsoft 設定介面不會自動支援接受 OAuth2 的自訂 IMAP 提供者。 Nextcloud Mail 針對通用 OAuth2 提供者的功能請求中對此差異進行了說明。對於其他供應商,請查看您使用的 Mail 版本及其支援的驗證方法,而不是輸入不相關的 Google 或 Microsoft 憑證。
https://mail.google.com/廣泛的受限權限,並受 Google 使用者資料和驗證政策的約束。管理員必須確定擬議用途是否符合這些要求。Google 在其OAuth2 Web 應用程式說明以及Gmail 的 XOAUTH2 範圍和協定中記錄了 Web 伺服器註冊流程。測試配置有助於初始驗證,但通常情況下,在請求存取 Gmail 郵件時,外部 OAuth 應用程式在測試模式下收到的刷新令牌會在七天後過期。請參閱Google 的令牌過期指南。因此,每週重複重新授權可能表示存在發布狀態限制,而不是 IMAP 密碼錯誤。
IMAP.AccessAsUser.All以及SMTP.Send刷新offline_access令牌的權限。請勿將這些協定權限與 Microsoft Graph 的 Mail.Read/Mail.Send 權限混為一談。有關註冊詳情,請參閱Microsoft 應用註冊文件和Exchange Online 的 IMAP/SMTP OAuth 說明。 Nextcloud 文件中提供的通用設定將租用戶欄位留空common。只有在管理員驗證了相關的帳戶類型和策略變更後,才應使用租用戶特定的值或更小的支援範圍。
在 Nextcloud 郵件帳戶表單中,已設定 OAuth 的 Google 端點會顯示「使用 Google 登入」,而 Microsoft 端點則會顯示「使用 Microsoft 登入」。 Nextcloud郵件帳戶表單的原始碼記錄了這些條件標籤。出現特定提供者的按鈕是 Nextcloud 已識別預期整合的有用早期跡象,但這並不代表授權或郵箱存取已完成。
| 觀察到的結果 | 接下來要檢查什麼? |
|---|---|
Google 報告redirect_uri_mismatch或 Microsoft 拒絕了回覆 URL。 | 將提供者註冊的 Web 重新導向與 Nextcloud Groupware 中顯示的精確 URI 進行比較。根據需要修正 HTTPS 來源、反向代理 URL、路徑和尾部斜線。 |
| 同意介面拒絕存取。 | 檢查 Google OAuth 受眾群體、測試使用者清單、受限範圍驗證或 Microsoft 租用戶同意和條件存取策略。切勿繞過組織策略完成設定。 |
| 服務商彈出視窗顯示帳戶已連接,但郵件仍卡住或為空。 | 返回郵件應用,刷新帳戶,檢查 Nextcloud 日誌,並確認用戶已連接帳戶。僅憑回調訊息不足以作為證據:Nextcloud 在 2026 年 7 月發布的一個問題中指出,受影響的版本中,提供者錯誤無法在成功螢幕上準確反映。 |
| 郵件可以到達,但發送失敗(Microsoft 365)。 | 檢查郵箱和租用戶的已驗證 SMTP設定以及郵件傳輸授權。 Exchange Online 可能會在 OAuth 授權成功後停用 SMTP 驗證;在要求郵件匣層級例外之前,請評估其安全性影響。 |
| 先前已建立的連線需要再次授權。 | 檢查客戶端金鑰是否過期、使用者授權是否已撤銷、刷新令牌狀態,以及(對於 Google)OAuth 應用是否仍在測試階段。在重新連接之前,請在提供者和 Nextcloud 設定中輪換使用已過期的金鑰。 |
微軟在其 Exchange Online SMTP 驗證文件中解釋了 SMTP 驗證控制,包括郵箱層級的覆蓋設定。切勿為了讓一個郵箱正常運作而全域降低郵件安全性;如果策略禁止使用該協議,請改用經批准的郵件用戶端或組織支援的工作流程。
如果收件匣仍然無法同步,Nextcloud 文件occ mail:account:export提供了尋找郵件帳號 ID 的方法,occ mail:account:sync -vvv ACCOUNT_ID以便進行針對性故障排除。其群組故障排除手冊還解釋了每個帳戶的 IMAP/SMTP 偵錯日誌記錄,並警告日誌可能包含敏感資訊。請僅捕獲所需信息,在共享之前編輯令牌和地址,並在共享後關閉詳細調試模式。
當提供者同意完成、郵件應用程式可以檢索目前郵件、外寄郵件能夠送達目的地且連線保持可用狀態而無需重複授權提示時,即表示設定已準備就緒。如果上述任何一項檢查失敗,請先排查該特定階段的問題,而不要立即重新建立整個 OAuth 應用程式。
使用 Gmail 或 Microsoft 365 為 Nextcloud Mail 設定 OAuth2,驗證接收和傳送,並解決常見的同意和 SMTP 失敗問題。
使用 OCC 還原 Nextcloud 存取權限,驗證資料庫遷移狀態,並為歸檔、Docker 或 Snap 安裝選擇正確的命令。
將 Nextcloud 連接到 LDAP 或 Active Directory,使用使用者和群組過濾器限制訪問,並在部署前驗證安全性驗證。
啟用受支援的 2FA 供應商,準備帳戶恢復,然後要求所有人或選定的 Nextcloud 群組進行雙重認證。
透過加密儲存層、保護臨時資料以及驗證加密和恢復,確保在 Collabora CODE 中編輯的檔案安全。
檢查您的主機架構,確認 CODE 標籤發布的是 ARM64,移除強制 AMD64 設置,並將映像錯誤與權限或記憶體問題區分開來。
在 Collabora Online 和 ownCloud Infinite Scale 之間建立 WOPI 連接,配置正確的服務 URL,並驗證文件編輯是否儲存。
透過設定 WOPI DisableExport 權限來阻止 Collabora Online CODE 中的文件匯出,然後驗證主機和編輯器是否強制執行該權限。
設定 Nginx TLS 終止、Collabora 路由和 WebSocket 標頭,然後在開啟真實文件之前測試公共端點。
追蹤 10 分鐘 CODE 斷開連線的原因,找到其代理程式、負載平衡器或 WebSocket 路徑,然後修正逾時問題並驗證會話是否保持連線。