首页 > 解决方案 > 带有 ASP.NET Core 的 AzureAD

问题描述

因此,我们在 Angular 中有一个前端应用程序,用户可以在其中使用 MSAL 登录到 Azure Ad。登录会检索后端 api 的 accessToken,其中包含用户所在的组。因为它们只有三个可用的组,所以不会超过令牌大小。我们要调用用 ASP.NET Core 编写的 api,并配置访问令牌在请求的标头中提供。现在我们首先要创建一个 AuthenticationScheme 和三个基于组的不同策略。我们怎样才能做到这一点?我们在 ASP.NET Core 方面经验不足,也不知道如何从标头中检索组信息。

我们的第一个方法是这样的:options.AddPolicy("Administrator", builder => builder.RequireAuthenticatedUser().RequireClaim("groups", "AzureAdGroups:AdminId"));但它没有成功。

标签: asp.netauthenticationazure-active-directorypolicies

解决方案


按着这些次序:

  1. 配置组可选声明,以便它们出现在您的令牌中。
  2. JwtBearer 身份验证和授权配置 WebAPI 。
  3. 将您的策略​​应用于您的控制器

推荐阅读