Oauth 2.0 是否可以将OAuth 2.0用于Office365 SMTP?

Oauth 2.0 是否可以将OAuth 2.0用于Office365 SMTP?,oauth-2.0,office365,Oauth 2.0,Office365,我有一个在家里写的电子邮件发送应用程序。我们已经将OAuth 2.0与GMail(个人和商业帐户)和Outlook.com帐户一起使用,并且没有任何问题 我们也可以使用用户ID和密码进行身份验证,但我们更喜欢OAuth 2.0,因为我们不会以这种方式在任何地方保存密码 我们现在有对Office365帐户执行此操作的请求 我注意到Office365 smtp服务器(smtp.Office365.com端口587)上的hello消息不提供XOAUTH2选项 250-BY2PR0601CA0005.o

我有一个在家里写的电子邮件发送应用程序。我们已经将OAuth 2.0与GMail(个人和商业帐户)和Outlook.com帐户一起使用,并且没有任何问题

我们也可以使用用户ID和密码进行身份验证,但我们更喜欢OAuth 2.0,因为我们不会以这种方式在任何地方保存密码

我们现在有对Office365帐户执行此操作的请求

我注意到Office365 smtp服务器(smtp.Office365.com端口587)上的hello消息不提供XOAUTH2选项

250-BY2PR0601CA0005.outlook.office365.com Hello [xx.xx.xx.xx]
250-SIZE 157286400
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-AUTH LOGIN
250-8BITMIME
250-BINARYMIME
250 CHUNKING
但是,outlook.com的SMTP服务器执行以下操作:

250-BLU436-SMTP14.smtp.hotmail.com Hello [xx.xx.xx.xx]
250-TURN
250-SIZE 41943040
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250-AUTH LOGIN PLAIN XOAUTH2
250 OK
Office365可以这样做吗?如果不是,我们能否将Office365用户指向outlook.com smtp服务器(smtp mail.outlook.com),或者他们是否完全不同

如果可能的话,我们不希望只使用API发送电子邮件,因为每个提供者的RESTful API当然会非常不同

使用Office365帐户发送电子邮件时使用OAuth 2.0的原因是我们不想在服务器上存储密码。此外,如果用户更改了密码,除非他们告诉我们或在我们的系统端手动更新密码,否则我们不会知道

使用OAuth 2.0可以解决这个问题,并允许应用程序像其他电子邮件提供商一样运行。

我也非常想要这个功能。这将使需要发送邮件的Office365应用程序变得更加容易


我做了一些调查,发现这似乎与我们将要得到的官方答案非常接近(答案完全是否定的)。

我使用javax.Mail和OAuth为桌面应用程序制作了一个示例。它打开登录屏幕以获取AccessToken。我遵循了多个说明,所以JavaMail中可能有太多的权限和道具,但我成功地发送了邮件


不确定我是否遗漏了什么,但这不是你想要的吗?看起来这是在二月份发布的。有趣的是,本文说Outh支持M365,但不支持outlook.com用户


那么,这里连微软都没有?是不是要加上什么?对于其他电子邮件服务器云软件来说,这确实是一个不错的功能。是的,我发现并决定了,因为旧的方法(outlook.com使用的方法)正在被弃用。我刚刚编写了一个应用程序,使用Office365 API发送电子邮件。如果我们需要开始编写特定于每个提供者API的东西,那么标准就到此为止。。啊。。。这毫无意义,因为SMTP协议应该可以正常工作。。。我有成千上万的客户使用所有不同类型的提供商(谷歌、微软、戈达迪等)。