microsoft-graph-api - 对 OnPremise Exchange 的 Graph API 调用仅适用于 Playground
问题描述
我们的设置是一个本地 Exchange 服务器,可通过图形 api 访问。https://docs.microsoft.com/en-us/graph/hybrid-rest-support
我们在问题中运行,我们的令牌只是“部分”工作。由“Graph-Playground”创建的代币正在完全发挥作用。但是我们找不到任何区别。
- 当我使用 Graph-Playground 或使用 Graph-Playground 生成的令牌时 => 所有请求都在工作
- 当我创建一个令牌(通过我的应用注册)=> 只有一些请求在工作
令牌似乎是有效的,一些像/me这样的调用正在工作,但是所有与交换相关的调用,比如/me/contacts都失败并出现此错误
请求,他们使用 Postman 生成的令牌:**
错误:
{“错误”:{“代码”:“MailboxNotEnabledForRESTAPI”,“消息”:“此邮箱尚不支持 REST API。” } }
(这是一个非常普遍的错误,而且大多不说真正的问题)
代币生成:
我创建令牌的方式与 Graph-Playground 创建令牌的方式相同(OAuth - 隐式流):
代币 - 分析:
作为旁注,它工作了几天,没有人改变任何东西:)
所以我不知道为什么“Graph Playground”可以创建一个工作令牌,而我的令牌只能“部分”工作。你能帮助我吗?
已经有一个线程,但我不是它的所有者。也没有更多的回应......我无法为外国线程提供赏金,这就是我创建一个新线程的原因。你可以在这里找到它:
MailboxNotEnabledForRESTAPI - Microsoft Graph API 与启用 HMA 的本地服务器集成
解决方案
我认识到您的错误,我们在几种情况下看到它(对于 Office 365):
- 用户没有 Exchange 许可证(可能不是这种情况,因为它在资源管理器中工作)。
- 客户租户已设置额外的安全性。
您可以将应用程序限制到某些邮箱。也许您的本地 Exchange 上也有类似的设置或策略,您必须连接到 Exchange Online Powershell 进行设置,所以也许您可以在那里找到一些东西。这只是一个疯狂的猜测。
为了追查这个问题,我将开始检查本地 Exchange 日志。
您是否尝试过使用/users/{upn}/calendar
端点?也许只是这/me/
部分不起作用。
推荐阅读
- python - 如何以烧瓶形式附加输入并将它们存储在浏览器缓存中并提交将提交所有输入
- node.js - 如何从节点js中的函数返回值
- c# - 从 NPOI 的内存流中保存 excel 文件
- javascript - 如何在javascript中批量合并来自同一文件或模块的多个导入函数?
- azure - Azure 数据工厂 - HTTP 链接服务的动态 URL?
- android - 如何在 Jetpack Compose 中集成自动填充功能
- powerbi - 瓷砖,使用rest api在powerbi中将视觉复制为图像
- oracle - PL/SQL:ORA-01031:权限不足 6/1 PL/SQL:SQL 语句被忽略 GRANT
- sql - 使用子查询 Woo Commerce 创建 SQL
- python - 即使在调试之后,Kivymd 应用程序也会在启动时崩溃