簡體   English   中英

有沒有辦法通過控制台應用程序C#連接啟用了Azure AD MFA的Outlook郵箱?

[英]Is there a way to connect Azure AD MFA enabled outlook mailbox through a console application C#?

我有一個用C#編寫的控制台應用程序,我們使用它使用交換服務連接到Outlook郵箱,以從收件箱中讀取電子郵件。 最近,我們已經使用MFA遷移到Azure AD,並且在進行更改之后,我的代碼拋出401未經授權錯誤。 任何人都可以提出一種解決方法來驗證控制台以連接和讀取郵件,而無需任何用戶依賴。

正常的WebClient功能,使用用戶名和密碼連接到Outlook。 https://outlook.office365.com/EWS/Exchange.asmx用作代碼中的服務對象URL。

使用ADAL.NET或MSAL.NET和OAuth2身份驗證到EWS: https ://docs.microsoft.com/zh-cn/exchange/client-developer/exchange-web-services/how-to-authenticate-an-ews- 使用Oauth的應用程序將處理您設置的任何MFA。 (我假設您的應用程序在用戶在場的情況下運行,因此可以進行身份​​驗證。如果這是一個使用用戶憑證進行硬編碼的無人值守應用程序,則您將不得不允許該用戶不使用MFA或更改該應用程序以使用服務主體登錄,仍然使用上述OAuth2)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM