bash - Azure Office 365 管理 API
问题描述
我正在尝试使用 bash curl 命令从 Microsoft Office 365 Management API 获得响应-
我得到这样的令牌-
TOKEN=$(curl -X POST "https://login.microsoftonline.com/$TENANTID/oauth2/token" -d "grant_type=client_credentials&client_id=$CLIENTID&client_secret=$ACCESSCODE&resource=$RESOURCEURL" | jq -r '.access_token')
然后使用令牌来获取这样的数据-
RESULT=`curl -X GET -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" https://manage.office.com/api/v1.0/$TENANTID/ServiceComms/Services`
我确实使用第一个命令返回了一个令牌,因此可以正常工作并且我的租户/客户端/资源字符串是正确的
但第二个总是给
{
"error":{
"code":"","message":"Authorization has been denied for this request."
}
}
我很确定我可以访问-
我错过了什么?
解决方案
原来我使用的资源 URL 与我请求数据的 URL 不匹配
推荐阅读
- php - 使用 do_shortcode 嵌入在 Wordpress 主题页面中的联系表格 7 显示除输入之外的所有内容
- sql - INNER JOIN 条件中的列顺序严重影响性能
- ios - AutoLayouts中乘数和常数的区别
- unity3d - 为什么我的头像编辑器在尝试预览肌肉设置时出错?
- r - 将多个列出的数据帧循环到一个函数中
- c# - 实现相等运算符的抽象类
- python - Django - 通过遍历类来获取模型对象的名称
- r - 提取括号内的字符
- java - 尝试运行 JavaFX 应用程序的可执行 jar - 错误:缺少 JavaFX 运行时组件
- matlab - 如何使 y 轴上的 MATLAB 图形中的公式与 LaTeX 解释器一起加粗?