【问题标题】:Use token from Outlook web add-in for EWS write operations使用 Outlook Web 加载项中的令牌进行 EWS 写入操作
【发布时间】:2018-04-20 14:02:43
【问题描述】:

是否可以使用 Outlook 加载项中的任何令牌来对创建或更新项目的 EWS 托管 API 操作进行身份验证?

显然mailbox.getCallbackTokenAsync返回的令牌只能用于读操作。我确实可以验证这是一个问题,因为尝试发送电子邮件或致电 UserConfiguration.Update 会导致错误:

此调用者或应用程序无法使用请求的 Web 方法。

我一直在 Azure 中的 ASP.NET Web API 应用服务中测试这些方法,从 Outlook 加载项中的 JavaScript 调用。

显然mailbox.getUserIdentityTokenAsync 可用于验证用户,但尚不清楚它是否可以与OAuthCredentials 一起用于ExchangeService.Credentials

这里有什么选择吗?我无法要求用户提供其用户名和密码以通过 Exchange 进行身份验证。我当然愿意使用 Graph 或 Mail API,但 AFAIK 无法使用这些 API 更新用户配置项。

【问题讨论】:

    标签: exchangewebservices office-js outlook-web-addins


    【解决方案1】:

    您正在寻找makeEwsRequestAsync()。支持CreateItemUpdateItem 操作makeEwsRequestAsync

    您可以在EWS operations that add-ins support 下的文档中找到支持的 EWS 操作的完整列表。

    还支持通过加载项调用Microsoft Graph,但正如您所指出的,Microsoft Graph 支持数量非常有限的邮箱配置选项。

    【讨论】:

    • 感谢 Marc,但在 FAI 项目上使用 UpdateItem 时 makeEwsRequestAsync 将不起作用 - 它会引发错误:“不允许 Office 扩展更新此类项目”。这就是我尝试 EWS 托管 API 的原因,因此目前的问题是加载项令牌仅支持读取操作。也许 OAuth 会起作用?这是一个额外的身份验证步骤(希望只有一次),但我可以忍受
    猜你喜欢
    • 2019-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-19
    • 2020-04-17
    • 1970-01-01
    相关资源
    最近更新 更多