使用OAuth2在Office 365中进行IMAP身份验证

时间:2015-04-20 12:08:13

标签: c# oauth-2.0 imap office365

我在我的程序中使用IMAP客户端。我尝试使用OAuth2机制(使用these instructions)通过IMAP客户端访问Office 365 Outlook。)

当我在IMAP客户端中进行身份验证时 - 身份验证失败,但Google和Outlook.com的OAuth2身份验证工作正常。 Office 365是否支持IMAP中的OAuth2身份验证?如果是的话,如何进行身份验证?

4 个答案:

答案 0 :(得分:2)

我们不支持OAuth访问Office 365的IMAP,我们也没有计划这样做,因为我们建议使用我们的REST API连接到您的应用的Office 365。 Office 365 REST APIs for mail, calendar and contacts和我们较旧的SOAP API Exchange Web Services支持OAuth。

答案 1 :(得分:2)

我们正在积极致力于OAuth支持与O365邮箱的IMAP连接。我们将在可用的情况下发布公告。

答案 2 :(得分:1)

借助OAuth 2.0 support for IMAP的新推出,我可以使用范围

生成令牌。

https://outlook.office365.com/IMAP.AccessAsUser.All

但是我仍然得到

A1没有身份验证失败

我正在使用以下属性:

props.put("mail.imap.ssl.enable", "true"); 
props.put("mail.imap.auth.mechanisms","XOAUTH2");
props.put("mail.imap.auth.plain.disable", "true");

编辑:它现在正在工作!

答案 3 :(得分:-1)

我按照这里的描述进行了操作:Connect to outlook Office 365 IMAP using OAUTH2

Azure AD中的“应用程序权限”已移至“图形API”部分,与上面的注释中的屏幕截图不同。 同样,Azure AD显示的范围对我不起作用,我不得不使用https://outlook.office365.com/IMAP.AccessAsUser