首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >调用图形API时,承载令牌无效

调用图形API时,承载令牌无效
EN

Stack Overflow用户
提问于 2019-03-17 22:28:18
回答 1查看 275关注 0票数 1

我想查看AD中我的用户的完整信息(组中的用户等)我已经有了一个登录到AD的应用程序,然后我得到了一个持有者令牌,它可以访问我的azure区块链工作台API,一切都很正常。工作台API有一个用户端点,但信息有限,它有名字、姓氏、电子邮件等……我想知道更多。

当尝试使用我已经拥有的持有者令牌调用https://graph.microsoft.com/v1.0/me端点时,它是无效的,我得到:

{

    "odata.error": {

    "code": "Authentication_MissingOrMalformed",

    "message": {

        "lang": "en",

        "value": "Access Token missing or malformed."

    },

    "requestId": "47322d1e-24d5-4170-ace5-947a8725ec1c",

    "date": "2019-03-13T08:14:37"

    }

}

我还尝试了一种不同的方法。我有一个服务主体,并给了这个服务主体一个windows active directory基本用户信息特权。我还给了它一个Microsoft Graph特权,也给了它一个使用mu区块链应用程序的特权(不确定是否需要)。

我使用客户端凭证主体调用https://login.microsoftonline.com/{{tenant-id}}/oauth2/token,并获得一个持有者令牌。现在有了这个持有者令牌,我得到了:

{

    "error": {

        "code": "Authorization_RequestDenied",

        "message": "Insufficient privileges to complete the operation.",

        "innerError": {

            "request-id": "2a7febaa-a6db-4770-a323-1971fa0bf863",

            "date": "2019-03-17T13:54:57"

        }

    }

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-18 09:04:35

需要为Microsoft Graph API获取访问令牌作为资源。

在第一种方法中,您已有用于workbench api的令牌不适用于Microsoft Graph,因为该令牌是用于Workbench API的。可以通过查看该令牌的aud声明来检查这一点。您可以使用https://jwt.ms解码令牌

在第二种方法中,只要您指定要获取令牌的资源是https://graph.microsoft.com而不是workbench API,token就会起作用。如果你仍然面临问题,分享你用来获取令牌或解码令牌本身的代码(减去任何敏感信息)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55208131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档