繁体   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