O365 Outlook REST API,伪装

Posted

技术标签:

【中文标题】O365 Outlook REST API,伪装【英文标题】:O365 Outlook REST API, masquerading 【发布时间】:2018-01-11 14:37:12 【问题描述】:

我们必须编写一个同步解决方案,该解决方案必须在 O365 中为最多 4000 个用户创建和更新日历事件。不可能以每个用户身份进行身份验证,但我找到的所有文档和示例都基于作为当前用户的直接身份验证。

通过另一个我知道伪装的日历 REST API,我可以在那里以管理员身份创建应用令牌,然后将 URI 伪装成另一个用户来创建事件。

但是 Outlook/O365 好像没有这个功能。我必须为解决方案选择哪种方式?

【问题讨论】:

【参考方案1】:

您实际上可以获得一个应用程序级令牌,它可以让您访问所有内容。

它涉及向应用程序添加应用程序级权限,然后使用一次性 oAuth 登录和管理员帐户,该帐户将授予应用程序这些权限。

然后,您可以使用 oAuth 客户端凭据身份验证流程来检索令牌,而无需进一步的用户交互(仅使用应用 ID 和密码)。

所有详情都在这里:https://developer.microsoft.com/en-us/graph/docs/concepts/auth_v2_service

当然,/me 之类的东西将不再有效,您必须访问特定用户。

注意:关于 Outlook REST API、Office 365 REST API、Microsoft Graph 之间的差异存在相当多的混淆,但后者似乎是最新的。

还有两种不同的应用注册方式,如果您想使用该过程,请确保使用上述文档中描述的一种。如果使用 Azure 应用注册,过程会略有不同(在上述链接文档的末尾有描述),但最终结果应该是相同的。

【讨论】:

感谢您的回答。我检查了链接,这对我来说似乎是一个可用的解决方案。感谢链接,我意识到 Graph API 是正确的起始位置。 谢谢。上周刚好在这方面工作 :-) 如果对您有帮助,请不要忘记投票和/或接受答案。

以上是关于O365 Outlook REST API,伪装的主要内容,如果未能解决你的问题,请参考以下文章

无法从Outlook REST API获取SourceUrl的附件

使用 Outlook rest api 更新事件时出错

Outlook REST API:V1IDToken 不适用于当前协议

Outlook API

html REST请求伪装

o365 和 Exchange 2010 的 EWS 托管 API 的 OAuth 身份验证