根据我的previous question,我正在尝试为Microsoft Graph实现资源所有者授权流认证。
我能够获得访问令牌以及我想要请求的特定资源所需的范围。以下是我正在尝试使用的参数:
url:https://login.microsoftonline.com/tenant_id/oauth2/token
资源:my_client_id
client_id:my_client_id
client_secret:my_client_secret
用户名:my_username
密码:my_password
grant_type:密码
当我使用此访问令牌从graph.microsoft.com获取资源时,出现错误:
请求:https://graph.microsoft.com/beta/deviceAppManagement/mobileApps
标题:Authorization: Bearer access_token
错误:"code": "InvalidAuthenticationToken","message": "Access token validation failure."
我读了一些其他帖子,因为我想查询Microsoft Graph,我需要在资源字段中提及,然后请求访问令牌。然后使用此令牌请求资源。但是,当我这样做时,我收到以下错误:
AADSTS50001:在名为abc.onmicrosoft.com的租户中找不到名为graph.microsoft.com的应用程序。如果租户管理员尚未安装应用程序或租户中的任何用户同意该应用程序,则会发生这种情况。
目标:实现可用于查询Microsoft AAD和Microsoft Intune(委派权限)资源的访问令牌。
答案 0 :(得分:1)
我从thread找到了解决问题的方法。
我使用此网址授予我的应用访问资源 graph.microsoft.com 的权限(之前我通过门户网站做过,但是没有用)
之后,我将访问令牌请求中的资源更改为graph.microsoft.com。有了这个令牌,我成功地从Microsoft Intune和AAD获得了资源。