使用 Azure Active Directory Oauth 进行 Azure 服务管理 API 身份验证

2023-12-12

我想通过curl 使用Azure AD 对Azure 服务管理API 进行身份验证。

I 设置一个应用程序在我的默认目录中。在这个免费试用订阅中,这是我拥有的唯一目录。

当我定位 oauth 令牌端点时,我收到一个 JWT。

curl --data "grant_type=client_credentials&client_id=<my_client_id>&client_secret=<my_encoded_secret>&resource=https%3A%2F%2Fmanagement.core.windows.net" https://login.windows.net/<my_tenant_id>/oauth2/token

但是当我使用该令牌列出我的订阅详细信息时,我收到错误:

curl -H "x-ms-version: 2014-06-01" \
     -H "Authorization: Bearer <my_token>" \
     https://management.core.windows.net/<my_subscription_id>/

    <Error xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
      <Code>ForbiddenError</Code>
      <Message>The server failed to authenticate the request. Verify that the certificate is valid and is associated with this subscription.</Message>
    </Error>

我已将应用程序的服务管理 API 的权限授予为“委派权限”,因为“应用程序权限”不可用。

enter image description here

我缺少什么?


这是不可能的,因为应用程序权限:0服务管理 API 的设置。这客户凭证授予类型使用来自应用程序的凭据(client_id 和 client_secret),并且由于应用程序没有此 API 的权限,因此调用失败。

由于服务管理 API 不允许任何类型的应用程序权限,因此我们必须使用authorization_code 授权类型或其他一些获取用户令牌的方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Azure Active Directory Oauth 进行 Azure 服务管理 API 身份验证 的相关文章

随机推荐

  • WiX 刻录升级最后显示卸载 UI

    我正在尝试为 WiX 和 Burn 创建自定义 UI 除了一件事之外 我几乎完成了 在正在升级 例如 1 0 0 到 1 1 0 的安装结束时 将开始卸载以前的版本并显示它的 UI 我的问题是我应该如何处理这个问题 以便用户最终看不到卸载用
  • ggplot2 中可以使用“大小点样式”的热图吗?

    是否可以在 ggplot2 中用圆形而不是方形绘制热图 如果不仅通过颜色渐变来表示值 而且还通过圆圈大小来表示值 那就太好了 我正在考虑这样的图表点热图其中圆的大小也按其特定值交替 我已经阅读了 ggplot2 的热图 但找不到解决方案 对
  • 通过删除最小数量的元素,将给定的整数数组转换为排序数组

    我正在解决以下问题 我必须通过删除最小数量的元素将给定的整数数组转换为排序数组 例如 3 5 2 10 11 将通过删除 2 进行排序 3 5 10 11 或者 3 6 2 4 5 7 7 将通过删除 3 6 进行排序 2 4 5 7 7
  • 在自己的线程中将数据写入 TcpSocket

    我的线程 TCP 服务器出现问题 我可以打开我的服务器 创建一个新的套接字 我可以通过套接字接收数据 我使用了readyRead 信号 然后使用readLine 来读取 这工作正常 现在我想将数据写入这个套接字从另一个线程 所以我创建了一个
  • eclipse 构建所有项目,甚至在为单个项目发布构建时也是如此

    Eclipse 版本 3 7 似乎存在一些问题 当我编译一些单个项目 通过 ant 或 buildProject 时 Eclipse 开始构建工作区中的所有项目 这需要很长时间 我尝试过以两种方式构建项目 右键单击ant文件 选择运行为并构
  • 用动画翻页(UIWebView)

    我有一个网络视图 它显示电子书的页面 我想用卷页动画从一页切换到下一页 现在 我知道如何切换页面以及如何在 webview 上应用卷页动画 但是如何以看起来像从一页翻转到另一页的方式应用卷曲动画呢 这是一些可下载代码并举例说明如何执行此操作
  • HTTP POST Google Cloud Functions NodeJS

    如何编写将接收 HTTP 请求然后将 HTTP POST 请求发送到不同端点的 Google Cloud Function 例如 我可以将 HTTP 触发器发送到我的云函数 https us central1 plugin check xx
  • 在 WPF 选项卡控件中将选项卡项文本设置为粗体

    当我将选项卡项目字体粗细设置为粗体时 该选项卡中的所有控件都会变为粗体 如何仅设置选项卡项的文本标题而不影响控件 这就是我为了让它发挥作用所做的 谢谢 SeeSharp 的提示
  • 与 iPhone DropBox API 的简单同步

    我对 DropBox API 感到有点沮丧 它应该是简单明了的 但我还没有找到关于如何进行简单同步的简单明了的解释 我遵循了 DropBox API 附带的自述文件中可以找到的所有说明 为了测试整个过程 我创建了两个按钮来从我的 DropB
  • ECMAScript 6 负二进制文字

    通过 EMCAScript6 我发现有一种方法可以表示二进制文字使用0b or 0B字首 我正在尝试它 但找不到表示负数的方法 因为它没有使用补码 我错过了什么吗 我找不到实际规范中解释二进制文字的位置 我想我可以通过类似的操作自己实现它
  • 仅在应用程序发布到 Google Play 后,Firebase 数据库才会出现错误 - android

    我正在制作一个使用 firebase 数据库的应用程序 我的应用程序运行时没有崩溃 直到我将其作为测试版发布到 Google Play 上 当我发布该应用程序时 它不断崩溃并在一行上返回 com google firebase databa
  • 24 小时后过期的 SQL 条目

    我想制作一个表 其中的条目在插入 PHP 和 MySQL 后 24 小时后过期 理想情况下 我希望每次用户与我的服务器交互时运行 删除过程 以删除旧条目 由于这种情况更为频繁 因此您应该不会有大量数据需要删除 因此它应该只需要几毫秒 我为每
  • 如何使用实体框架从 SQL Server 实例获取数据库名称列表?

    我想使用实体框架 EF 查询 SQL Server 实例并返回该实例上的数据库名称列表 我可以使用以下代码来做到这一点 但想知道是否有 EF 的方法 public static string GetDatabaseNames SqlConn
  • linq toEntity 无法识别方法

    我有这些方法 public int count Guid companyId Expression
  • 空手道 API 测试中不存在 iRequired 请求部分“文件”

    当我尝试使用以下功能时 我收到必需的请求部分 文件 不存在 功能 验证 API 是否正确返回产品 Background url http localhost 8080 Scenario Products are returned on po
  • 使用元标记和 PHP 重定向页面

    在这里 在 PHP 代码中 我面临着在有效登录后重定向页面的问题 示例代码 result mysql query sql count mysql num rows result if count 1 echo else gt gt
  • 如何在没有 ResultSet 的情况下获得 ResultSetMetaData 的等效项

    我需要将一堆列名解析为列索引 以便使用一些不错的ResultSetMetaData方法 然而 我知道如何获得的唯一方法ResultSetMetaData对象是通过调用getMetaData 一些ResultSet 我遇到的问题是 获取 Re
  • Spring 批量暂停/恢复与停止/重新启动

    我是 Spring Batch 的新手 有一些关于暂停 恢复的问题 阅读 spring Batch 文档后 似乎没有任何内置的暂停或恢复功能 但是 我从主站点找到了这个用例 http docs spring io spring batch
  • 如何一条一条选择记录而不重复

    select id name from customer order by random limit 5 上述查询选择随机记录 但是它会重复行 我只想每次选择一行而不重复 假设我的 id 为 1 到 5 第一次我想选择 1 第二次查询显示
  • 使用 Azure Active Directory Oauth 进行 Azure 服务管理 API 身份验证

    我想通过curl 使用Azure AD 对Azure 服务管理API 进行身份验证 I 设置一个应用程序在我的默认目录中 在这个免费试用订阅中 这是我拥有的唯一目录 当我定位 oauth 令牌端点时 我收到一个 JWT curl data