我正在研究这个项目
https://github.com/Azure-Samples/ms-identity-docs-code-dotnet/tree/main/web-api#2-add-scopes
上面的链接建议添加一个作用域,但没有列出作用域应该添加到哪里?
我四处搜索,并注意到角色已被删除(如果这是同一件事),但考虑到我使用该项目中提供的默认代码(实际上有些人可能会说它的不同,因为我的代码是Web核心API,而不是最小的API),我不能让它运行。
我得到一个401和潜在的错误是
Microsoft.AspNetCore.Authorization.DefaultAuthorizationService: Information: Authorization failed. These requirements were not met:
ScopeAuthorizationRequirement:Scope=
编辑:
我终于找到了一个
应用注册〉公开API〉添加作用域
在此之后,我添加了API权限下的权限,并在状态列下有绿色标记,但上面的相同错误仍然存在
1条答案
按热度按时间r3i60tvu1#
我在我的Azure AD租户中注册了一个Web API,如该项目中所述,如下所示:
现在,我通过点击Expose an API标签中的**
Set
**添加了Application ID URI,如下所示:要添加作用域,需要点击**
Add a scope
**选项,并填写如下详细信息:添加作用域后,会显示在本API定义的作用域下,如下图所示:
我克隆了相同的项目并修改了 。/appsettings。json 文件,**
ClientId
和TenantId
**值如下:当我用**
dotnet run
**命令运行这个项目时,我得到了下面的响应:当我通过Postman向web API发送一个认证请求时,通过包含bearer token,我成功得到如下响应:
答复: