Azure活动目录-使用Azure CLI获取访问令牌

时间:2019-11-21 10:04:35

标签: azure azure-active-directory

我的目标是为用户获取资源(租户中存在一个AD应用)的访问令牌

我已经能够通过使用

获得服务主体的访问令牌。

az登录--service-principal -u -p --tenant --allow-no-subscriptions

az帐户get-access-token --resource

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

az登录

az帐户get-access-token --resource

这却给出了错误

获取令牌请求返回的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“,”错误代码“:[65001] ,“ timestamp”:“ 2019-11-21 09:03:25Z”,“ trace_id”:“ 19fdf309-f9ef-423b-8c18-7cd9269b0700”,“ correlation_id”:“ 2aafc4e4-0c1b-42b3-ba59-afe09bbe9fb5”, “ suberror”:“ consent_required”}

有人可以帮助我理解为什么会这样吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

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

enter image description here

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

enter image description here

然后再次获取访问令牌。

enter image description here