Azure active directory 验证web API中B2C访问令牌的作用域

Azure active directory 验证web API中B2C访问令牌的作用域,azure-active-directory,jwt,azure-ad-b2c,bearer-token,Azure Active Directory,Jwt,Azure Ad B2c,Bearer Token,我们有两个独立的dotnet核心API(API1和API2),它们使用azure ad b2c进行保护。这两个API都在b2c租户上注册,并公开其作用域。我们有一个客户端web应用程序,用于访问上述受保护的API。此web应用已在b2c租户中注册,并已为上述api设置api权限,并公开了适当的作用域 关于配置web应用程序以使其能够访问多个受保护的API的最佳方法是什么,有人建议使用“将两个服务合并到单个应用程序注册中并公开不同的作用域”的方法 在尝试实现这一点的同时,我还要验证访问令牌中存在的

我们有两个独立的dotnet核心API(API1和API2),它们使用azure ad b2c进行保护。这两个API都在b2c租户上注册,并公开其作用域。我们有一个客户端web应用程序,用于访问上述受保护的API。此web应用已在b2c租户中注册,并已为上述api设置api权限,并公开了适当的作用域

关于配置web应用程序以使其能够访问多个受保护的API的最佳方法是什么,有人建议使用“将两个服务合并到单个应用程序注册中并公开不同的作用域”的方法

在尝试实现这一点的同时,我还要验证访问令牌中存在的作用域以及访问群体和权限

public void ConfigureServices(IServiceCollection services)
    {
        services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
            .AddJwtBearer(jwtOptions =>
            {
                //validating the access token with client id and token issuer(authority)
                jwtOptions.Authority = Configuration["AzureAdB2C:Authority"];
                jwtOptions.Audience = Configuration["AzureAdB2C:ClientId"];

            });

        services.AddMvc();
        services.AddMemoryCache();

       
        services.AddControllers();

        // Start Registering and Initializing AutoMapper

        services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());

        // End Registering and Initializing AutoMappe

    }
如何最好地验证访问令牌的作用域


非常感谢您的帮助。

这篇来自Auth0的文章提供了一个非常好的教程,介绍了如何创建自定义授权属性,该属性从令牌中获取范围声明(“scp”),并验证每个控制器方法的范围。如果每个服务只有一个作用域,那么这当然可以在全球范围内完成

这篇来自Auth0的文章提供了一个非常好的教程,介绍了如何创建自定义授权属性,该属性从令牌中获取范围声明(“scp”),并验证每个控制器方法的范围。如果每个服务只有一个作用域,那么这当然可以在全球范围内完成