Azure Active Directory - 使用 Azure CLI 获取访问 token

标签 azure azure-active-directory

我的目标是获取用户对资源的访问 token (租户中存在的 AD 应用程序)

我已经能够使用

获取服务主体的访问 token

az login --service-principal -u -p --tenant --allow-no-subscriptions

az 帐户获取访问 token --resource

现在,当我尝试通过用户登录(az登录)切换服务主体登录来为用户实现相同的目标时

az登录

az 帐户获取访问 token --resource

但是这会产生错误

获取 token 请求返回 http 错误:400 和服务器响应:{"error":"invalid_grant","error_description":"AADSTS65001: 用户或管理员尚未同意使用 ID 为“abc”的应用程序。发送此用户和资源的交互式授权请求。\r\n跟踪 ID: 19fdf309-f9ef-423b-8c18-7cd9269b0700\r\nr\n时间戳: 2019-11-21 09:03:25Z","error_codes":[65001] ,“时间戳”:“2019-11-21 09:03:25Z”,“trace_id”:“19fdf309-f9ef-423b-8c18-7cd9269b0700”,“correlation_id”:“2aafc4e4-0c1b-42b3-ba59-afe09bbe9fb5”, “子错误”:“consent_required”}

有人可以帮我理解为什么会出现这种情况吗?

提前致谢!

最佳答案

您正在尝试从 <APP ID Uri> 获取 token 使用 Azure CLI,客户端 ID 正是 04b07795-8ddb-461a-bbee-02f9e1bf7b46 .

enter image description here

转到资源(AD 中的应用程序)->公开 API->使用 04b07795-8ddb-461a-bbee-02f9e1bf7b46 添加客户端应用程序并检查范围。

enter image description here

然后再次获取访问 token 。

enter image description here

关于Azure Active Directory - 使用 Azure CLI 获取访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58972199/

相关文章:

azure - 使用 Service Fabric 时如何控制操作系统配置更改?

c# - 架构: Handling large scale photo upload and resizing

c# - Azure AD 通过补丁调用更改密码

azure - 如何查找 Active Directory OAuth 身份验证的受众字段? (如何从 Azure 逻辑应用程序向 DevOps 发送发布请求?)

azure - 使用 Azure AD 作为 AWS 的身份提供商

从不同帐户访问 Azure 托管标识

Azure - 随着时间的推移预测

Azure Maps 路线方向 - 错误请求

node.js - 使用 Node 为 AAD 应用程序创建用户访问 token

azure-active-directory - Azure AD 中的 Auth0 和 JWT 之间有什么区别(在 Azure AD 中使用访问 token 的最佳实践)?