【问题标题】:Utilizing OAuth2 for Office365, through Exchange ActiveSync (EAS)通过 Exchange ActiveSync (EAS) 为 Office365 使用 OAuth2
【发布时间】:2017-05-12 23:28:11
【问题描述】:

博文:Announcing Exchange ActiveSync v16.1 声明:

虽然不是 EAS 16.1 的一部分,但我们还想指出,Office 365 和 Outlook.com 客户现在都可以使用 OAuth 2.0 协议通过 EAS 进行授权。

我的问题是:我应该在 oauth 请求中使用哪个 范围

有没有一个例子,也许是完整的请求?

注意:有一个关于using OAuth for Office365 with IMAP 的类似问题,但这里我特意询问的是ActiveSync。我在comment to one of the answers on that thread 中引用了这个问题。

次要问题

感谢 Jason 的回答和一些额外的调整,我们设法使用 https://login.windows.net/common/oauth2 生成 oauth 令牌,但仅限于 office365 用户(组织帐户)而不是 Microsoft 用户帐户(live、hotmail、outlook.com...)

该令牌允许访问 ActiveSync 协议(通过 https://eas.outlook.com/Microsoft-Server-ActiveSync)和 EWS API(通过 https://outlook.office365.com/EWS/Exchange.asmx)。

很遗憾,我们找不到为 Microsoft online 帐户(hotmail、live、outlook.com)生成相同令牌的方法。我们尝试使用此端点:https://login.live.com/oauth20_authorize.srf,它只允许 activesync 而不允许 EWS。

有没有办法在两种协议(ActiveSync 和 EWS)上为组织帐户和在线帐户使用相同的令牌?

【问题讨论】:

  • 我也有同样的问题!你弄明白了吗?
  • 没有。我还是希望能找到答案……

标签: oauth-2.0 office365 activesync


【解决方案1】:

抱歉,这花了这么长时间,但直到今天我才知道这个问题 :)。您需要在 Azure Active Directory 中将您的应用程序注册为本机应用程序:

然后添加 Access 邮箱作为通过 Exchange Web 服务登录的用户(在 Office 365 Exchange Online 下)委派权限。

注意:您不能在应用程序注册门户(https://apps.dev.microsoft.com)中注册,它需要在 Azure 门户(https://portal.azure.com/)中注册,并且您需要使用@987654324 @ 用于授权和令牌请求。

【讨论】:

  • 感谢您的回答。但是,还有第二个问题:我们需要为 office365 用户和在线用户(hotmail、live 等)使用相同的令牌。我在问题中添加了完整的描述。
  • Azure v1 端点不支持 Microsoft 帐户(Hotmail、Outlook.com 等)。他们只支持 Office 365。
  • 有没有办法让两种帐户类型(以及 EWS 和 ActiveSync)都使用单个 oauth 令牌?我们尝试使用 LiveConnect,但它仅适用于 MS 帐户。
  • 不,没有办法。 EWS 范围未在 Azure 的 v2 端点上公开,这是唯一支持融合身份验证的端点(意味着工作和个人帐户都可以进行身份​​验证)。
  • 好的。与 EWS 一起使用的个人帐户(hotmail)的 oauth 范围和端点是什么?
猜你喜欢
  • 2013-06-07
  • 2020-07-30
  • 2021-02-24
  • 2012-09-14
  • 1970-01-01
  • 2017-10-25
  • 1970-01-01
  • 1970-01-01
  • 2012-01-31
相关资源
最近更新 更多