Azure AAD应用程序可以访问Admin应用,而无需使用令牌授予许可



我有两个Azure广告应用:

1(admin/backendapp守护我的webapi

2(消费者应用程序会消耗我的WebAPI

当我尝试使用以下URL创建的令牌访问我的Web API时

https://login.microsoftonline.com/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx x

我从上方的URL获得访问令牌,并将该令牌作为授权标题传递给我的WebAPI,我将获得成功的响应,而无需授予/从Admin/BackendApp授予任何访问权限。

you 需要检查令牌中的有效范围/角色!

在Azure AD中定义API的委派/应用程序权限,并在您的API中执行它们。全球检查令牌至少包含一个有效的许可。

任何租户中的应用都可以为您的API获取令牌,只要他们知道您的房客ID和客户ID即可。如果您不检查权限,您的API很脆弱!

我有一篇有关如何在ASP.NET核心中定义和执行范围的文章:https://joonasw.net/view/azure-ad-authentication-authentication-authentication-authentication-authentication-authentication-appnet-core-apnet-core-api-part-part-part-1

基于您的查询,创建JWT令牌是为了调用API已有足够的权限来调用资源。这看起来像普通的方案

相关内容

最新更新