当前位置: 首页 > 知识库问答 >
问题:

在生成azure AD令牌时如何在api中传递作用域

韩耘豪
2023-03-14

我可以使用Postman生成访问令牌。但是,我需要从API生成令牌。我尝试使用api获取令牌,参考了microsoft关于如何生成访问令牌的文档。但在运行OAUTH2.0的post请求时收到以下错误

错误--

{
    "error": "invalid_scope",
    "error_description": "AADSTS70011: The provided request must include a 'scope' input parameter. The provided value for the input parameter 'scope' is not valid. The scope api://f653b343-fe0a-422d-b4a8-f36346a3156b/Access.As.User is not valid.\r\nTrace ID: ce5c37f6-57c0-44f6-b265-ccc68602ba00\r\nCorrelation ID: a44a64c1-9277-40e3-b855-ee0abbe44ab6\r\nTimestamp: 2020-11-11 11:54:49Z",
    "error_codes": [
        70011
    ],
    "timestamp": "2020-11-11 11:54:49Z",
    "trace_id": "ce5c37f6-57c0-44f6-b265-ccc68602ba00",
    "correlation_id": "a44a64c1-9277-40e3-b855-ee0abbe44ab6"
}

共有1个答案

潘兴朝
2023-03-14

客户端凭据流中,请求中的scope参数应该是,scope=api://{your-appid}/.default(后缀)。请参考Ms文档,该文档也提到了相同的内容。

根据您共享的屏幕截图,分配的所有权限都是委托权限。由于客户端凭据流只支持应用程序权限,这就是您面临401,unauthorized问题的原因。请添加应用程序权限以解决此问题。

 类似资料:
  • 今天早些时候,我问了一个关于使用ZenDesk API进行ajax调用的问题。 我可以在命令提示符下成功运行以下命令,并在ZenDesk中创建一个票证(是api令牌字符串): 我现在试图理解的是如何将其转换为ajax调用。这是我下面的文档。 我目前正在做的事情如下: 以下是我已经看过的一些答案和文档,但我仍然很困惑: (最佳之一):https://auth0.com/blog/using-json

  • 我正在尝试访问授权服务器,该服务器在用户提供用户名和密码时发出短期访问令牌和长期刷新令牌。 < li >客户端是应该在每次调用API时将刷新令牌与访问令牌一起传递,还是应该仅在从API收到访问令牌已过期的错误代码时才传递刷新令牌? < li >刷新令牌过期后,什么类型的错误代码会传回客户端?这意味着客户端需要通过再次传递用户名和密码来请求新的访问令牌。

  • 我正在使用ADFS2.0和WIF来验证和授权我的用户使用ASP.NET MVC4应用程序WebAppa。WebAppA使用WebClient.DownloadString(url)调用另一个WebAppB,我希望将委托用户的凭据传递给WebAppB,以检索用户的定制内容。 我看到了几个web应用程序使用CreateChannelActingAs调用WCF服务的示例,但这与我的情况不同。 谢谢你的帮

  • 问题内容: 我有一个使用elasticsearch-jetty项目的嵌入式Elasticsearch,并且我需要设置为比默认值更好地使用标记器。我想使用关键字标记器。 我一辈子都想不通如何通过配置文件来做到这一点。谁能指出我通过配置文件执行此操作的方法? 顺便说一句,是否可以通过对索引执行POST来在启动和运行时调整索引?我真的很想了解如何使用它,谢谢。 编辑/更新:我在将curl -XPUT或-

  • 首先,让我承认我是API新手,现在我正在和Laravel一起研究JWT。我使用的是tymon\jwt auth(

  • 我有访问令牌和刷新令牌。但是访问令牌过期后几个时间,所以我想从刷新令牌为谷歌驱动器API生成访问令牌。所以给我的想法或代码,从谷歌驱动器API刷新令牌生成访问令牌。