AADSTS65005:无效资源。(Azure时间序列洞察API)

AADSTS65005:无效资源。(Azure时间序列洞察API),azure,azure-active-directory,azure-timeseries-insights,Azure,Azure Active Directory,Azure Timeseries Insights,我正在尝试获取授权代码和令牌以访问时间序列环境 我在Azure Active Directory中创建了一个应用程序,并按照本文中的说明让它访问时间序列环境。之后,我得到了我的客户id(应用程序id)、客户机密(应用程序密钥)和租户id 然后,我尝试按照本文中的说明进行操作,并尝试在浏览器中获取资源“”的身份验证代码。我在浏览器中插入的地址如下所示: https://login.microsoftonline.com/{tenant}/oauth2/authorize?client_id={cl

我正在尝试获取授权代码和令牌以访问时间序列环境

我在Azure Active Directory中创建了一个应用程序,并按照本文中的说明让它访问时间序列环境。之后,我得到了我的客户id(应用程序id)、客户机密(应用程序密钥)和租户id

然后,我尝试按照本文中的说明进行操作,并尝试在浏览器中获取资源“”的身份验证代码。我在浏览器中插入的地址如下所示:

https://login.microsoftonline.com/{tenant}/oauth2/authorize?client_id={client_id}&response_type=code&redirect_uri=http%3A%2F%2Flocalhost%2F&response_mode=query&resource=https%3A%2F%2Fapi.timeseries.azure.com%2F&state=12345
我检查了三倍的值,在我看来一切都是正确的,但我的浏览器中不断出现以下错误:

AADSTS65005: Invalid resource. The client has requested access to a resource 
which is not listed in the requested permissions in the client's application 
registration. Client app ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Resource 
value from request: https://api.timeseries.azure.com/. Resource app ID: 
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. List of valid resources from app 
registration: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.

谢谢你的帮助。

终于发现了问题所在。我对微软azure有点不屑一顾,但最终还是明白了

问题是参数资源的值为“”,而它应该具有我尝试访问的资源的注册应用程序(服务主体)的应用程序id

我还需要创建另一个注册应用程序作为客户端,并将我的资源的注册应用程序添加到所需权限中。我错过了这一步,因为当尝试将API添加到所需的权限时,它没有显示我资源的注册应用程序名称,除非我使用带有名称初始字符的筛选,如中所示

在这种情况下,client_id参数应该具有客户端已注册应用程序的应用程序id


之后,我在浏览器中插入了具有正确值的地址,确认了访问权限,浏览器返回了身份验证代码。

只是为了确保在Azure门户中,您是否将timeseries资源添加到了应用权限中?嗨,Daniel,感谢您的回复。在时间序列环境页面中,我在数据访问策略部分添加了注册的应用程序。在Azure Active Directory->Apps Registration->Timeseries Environment->Settings->Required permissions->Add API access->Select a API中,我没有看到任何与时间序列资源相关的API。在搜索框中,只需复制粘贴错误消息中显示的客户端ID,即可获得API名称,添加权限并等待10秒,然后再次测试。谢谢你,这对我有用。