无需用户名/密码且无管理员参与的Exchange Web服务身份验证

MJB*_*MJB 5 authentication exchange-server oauth token exchangewebservices

这是场景

  • 第三方应用程序,后端.客户使用该应用程序.
  • 后端需要访问用户的交换信息,假设是通过EWS
  • 后端在我们的数据中心/云中运行,而不是客户.
  • 不能要求本地管理员参与
  • 想避免在我们的后端存储用户名/密码.
  • 想要同时支持Office365和内部部署.

我相信这是目前不可能的,但想验证:

  • 假冒将是一个很好的方式,但需要管理员
  • 基于令牌的身份验证不用于此.它适用于邮件应用程序用于后端的SSO,而不是后端访问Exchange.
  • OAUTH是理想的,但是a)仅适用于Office365目前b)要求后端的一部分由Azure托管c)Azure安装必须链接到Office365安装,并且仅供本地管理员使用.

我的分析是否正确?我错过了什么选择?

MJB*_*MJB 0

因此,添加到 Jason 的这个基本正确的答案中:

  1. 使用纯粹的休息,您只需要创建一个“多租户”应用程序,并且用户可以自行同意。
  2. 您还可以使用 OAuth 令牌对 EWS 进行身份验证 - 但前提是选择了委派对邮箱的完全访问权限。这也不需要管理员同意,但范围很大(但有必要,因为 EWS 不理解范围)