当前位置: 首页 > 知识库问答 >
问题:

使用OAUTH2连接到outlook Office 365 IMAP

宋铭
2023-03-14

参考https://msdn.microsoft.com/en-us/office/office365/api/use-outlook-rest-api。我仍然无法理解广告、Outlook和windows Live。

我从https://login.microsoftonline.com/common/oauth2/v2.0/authorize https://login.microsoftonline.com/common/oauth2/v2.0/token获得了刷新令牌和访问令牌

和范围

openid电子邮件配置文件offline_access https://outlook.office.com/mail.send https://outlook.office.com/mail.readwrite

imap.authenticate('XOAUTH2', 'xxxxxxx', access_token)
Net::IMAP::NoResponseError: AUTHENTICATE failed.

共有1个答案

金理
2023-03-14

我终于让这个起作用了。有趣的是,我不得不使用作用域https://outlook.office365.com/imap.accessasuser.all,尽管现在您必须在Azure广告中的Graph API部分中注册应用程序,并且建议的作用域https://Graph.microsoft.com/imap.accessasuser.all,这对我不起作用(身份验证失败)。虽然我不确定这种情况在不久的将来是否会改变。

我使用了如下所述的属性:https://javae.github.io/javamail/oauth2

props.put("mail.imap.sasl.enable", "true");
props.put("mail.imap.sasl.mechanisms", "XOAUTH2");
props.put("mail.imap.auth.login.disable", "true");
props.put("mail.imap.auth.plain.disable", "true");
 类似资料:
  • 我试图连接SMTP使用Oauth2为Gmail,但得到以下问题。 Oauth令牌和电子邮件名称正确,可用于连接IMAP。 我正在效仿google。

  • 我的一位同事实现了访问api所需的授权代码流,我们将access和refresh_tokens基本存储在数据库中以访问这个第三方api。但是感觉不对,我也找不到任何最佳的做法,有谁能帮我吗?

  • 问题内容: 我是Redis的新手…我最近刚拿起Redisent来在PHP中使用Redis …并且我玩得很开心!但是,我注册了Redis服务,并一直在努力使用该服务… URI字符串如下: redis:// [用户名]:[pass] @ [服务器] .redistogo.com:[端口] / Redisent客户端只需输入主机名和端口…并且我没有地方输入用户名/密码…:-/我也一直在摆弄fsockop

  • 问题内容: 我正在尝试使用SQL来构建.NET Web应用程序以查询AS400数据库。这是我第一次遇到AS400。 为了连接,我必须在我的机器(或AS400服务器)上安装什么?(用于Windows的IBM iSeries Access?) 连接字符串的组成部分是什么? 在哪里可以找到使用SQL命令构建数据访问层的示例代码? 谢谢。 问题答案: 您需要AS400 .Net数据提供程序。在这里检查:h

  • 问题是我不想把我的密码放在yaml文件中。我想使用密钥文件或不记名令牌。我不确定我怎么能从这个开始。请帮帮忙。提前致谢:)