azure - 使用客户端凭据的 Azure AD 服务到服务调用 - 共享密钥
问题描述
我有一个托管在云上的 API 和一个位于同一组织和同一网络但在我的本地计算机上的守护程序应用程序客户端。我已经两次和三次检查了设置,但仍然无法将它们相互连接。
所以为了看问题,我把它们分成了两个子问题。
- 将 Daemon App 连接到 Azure AD 以检索令牌,然后使用令牌访问 Microsoft Graph。检索令牌后出错。
Failed to call the Web Api: Forbidden
Content: {
"error": {
"code": "Authorization_RequestDenied",
"message": "Insufficient privileges to complete the operation.",
"innerError": {
"request-id": "2646f5f8-9c25-482d-a89f-f14ca6c06cf7",
"date": "2019-07-22T01:13:30"
}
}
- 使用守护程序应用程序访问 API - 所以我从未接触过,因为我从未能够通过第 1 步。
关于如何解决此问题的任何想法。我错过了一些简单的东西吗?
解决方案
Azure AD Graph API与Microsoft Graph API不同。所以有两种方法可以让它工作。
1 . 使用 Microsoft 图形 API。
您应该授予应用程序 microsoft graph api 权限。
2 . 使用 Azure AD 图形 API。
您需要更新代码如下。
a. 将范围更改为https://graph.windows.net/.default
。
b.将 api 更改为GET https://graph.windows.net/myorganization/users?api-version=1.6
笔记:
我们强烈建议您使用 Microsoft Graph 而不是 Azure AD Graph API 来访问 Azure Active Directory 资源。
推荐阅读
- php - 如何隐藏图像的扩展名?
- python - 在 SGE 集群问题上在 SnakeMake 中使用 Conda 环境
- node.js - Meteor pub子同款集合不同投影
- android - 带有 CollapsingToolbarLayout 的 NestedScrollView 滚动不顺畅(NestedScrollView 在向上滚动时粘在顶部)
- mongodb - 使用排序和分页填充或聚合 2 个集合
- serialization - _$UserSerializerMixin 我需要吗?
- ruby-on-rails - Capybara 找不到字体真棒图标
- reactjs - 如何处理以设置的间隔卸载组件以避免内存泄漏
- azure - Azure ARM 模板 json 函数错误:使用问题
- javascript - How to add arrays into an array in JavaScript