Azure API管理无法为Oauth2设置添加其他主体参数

xghobddn  于 2023-10-22  发布在  其他
关注(0)|答案(1)|浏览(95)

我有几个dataverse API,我想在API管理中管理,所以我创建了应用程序注册并使用该客户端ID生成令牌。我在Postman中尝试了这个,它工作得很好,我想设置我的API管理,所以首先我添加Oauth2,然后在我的API中,我为API使用这个Oauth2设置。然后我试着测试它,生成了令牌,但我仍然得到了未经授权的响应,我的第一个猜测是,在生成令牌时,我没有添加一个资源参数,这是我的dataverse URL。然后我回到我的Oauth2设置,我只是注意到没有参数添加它。然后我去谷歌搜索,我发现旧的API管理有一个参数,所以我们可以在那里添加资源。他们把它删除了还是这是一个bug?或者,在生成令牌时,可能有一种新的方法来添加参数?这是新的API管理

,这是我在互联网上找到的旧API管理

js5cn81o

js5cn81o1#

我已经在Azure APIM中配置了OAuth2,以便通过以下方式调用Dataverse API-
使用v2端点进行Oauth2配置。

启用OAuth 2.0

我正在Entra中添加授权代码授予流重定向URI。

在Manifest和下面的API权限中更改了"accessTokenAcceptedVersion": 2

完成所有这些更改后,我使用Developer Portal调用下面的URL。

GET https://org******.crm.dynamics.com/api/data/v9.2/WhoAmI

选择authorization_code后,系统将提示您登录。成功登录后,承载令牌将被修改为请求报头。

输出:

尝试将scope作为https://*********.crm.dynamics.com/.default传递并按照我的步骤进行操作,您也会得到输出。

相关问题