如何使用 Outlook 個人憑證進行移轉

大家好!我正在設置一個 n8n 工作流程,使用現有的 Azure App Registration 從共用信箱讀取/發送電子郵件。

目前,n8n 使用 Microsoft Graph 委派權限 OAuth 流程,這會將連線連結到我的個人帳戶。為了讓整個團隊都能使用此自動化,是否有標準方式可以連線到 Outlook 而不需使用個人認證?

  • 我們可以佈建一個對共用信箱擁有存取權的通用服務帳戶嗎?
  • 或者我們可以將 Azure App 切換為應用程式權限,並透過應用程式存取原則限制只能存取此信箱嗎?

任何關於此標準 IT 流程的指導都會很有幫助。謝謝!

嘿 @Neeraj_Sharma1,當你等待回覆時,以下是一些可能對你有幫助的資源:

建議的資源

自動與你的問題配對。

文件:

論壇:

@Erick_Torres、@Zelite、@tomwhi - 你們之前曾協助解決過類似的問題,能來看一下嗎?

由 n8n 社群機器人自動建議。這是試用計畫 - 請在此分享回饋。

@Neeraj_Sharma1 你好!

  1. 可以,但要建立一個專用的非個人帳戶,給予它共享信箱的存取權限,並使用「啟用共享收件匣」選項將 n8n 連線到它。缺點是它仍是一個已登入的使用者,因此需要授權,並且可能因 2FA 而中斷。

  2. 這是更好的選項,將 Azure 應用程式切換為應用程式權限 Mail.ReadWrite + Mail.Send,並具有管理員同意/權限。n8n 也支援這個

以下是官方文件! - Microsoft Entra Service Principal credentials | Nodes | n8n Docs

Microsoft 文件 - 此處

確保您的 n8n 執行個體版本在 2.29 以上!

好的,所以一旦我在 Azure AD 中設定應用程式權限並取得管理員同意後,我必須啟用共用信箱來設定 Outlook Oauth 2 憑證。那麼假設我離開了公司。流程會在那之後無縫繼續運行嗎?

只要是服務主體,僅限應用程式,是的!如果你使用 Ouath2,而且是以你的身分登入,就不行,當你的公司帳戶被停用時,它就會掛掉

讓我知道是否有效!如果你需要任何進一步的幫助,請告訴我們!如果一切順利,可以隨時將任何回覆標記為解決方案!

所以我所做的是,我已經建立了一個共享信箱和新的 Azure App 註冊,具有 mail.ReadWrite 和 Mail.send 的應用程式權限(管理員同意尚待批准)。現在在 n8n 中,我已使用 Azure 應用程式的用戶端憑證建立了 OAuth2 API 認證。從 n8n 我可以向 https://graph.microsoft.com/v1.0/users//messages?$top=5 傳送 Http 請求以取得電子郵件。
我是否朝著正確的方向發展,還是仍在使事情複雜化?

是的,那應該可以!