Skip to content

Instantly share code, notes, and snippets.

@nmchenry01
Last active November 28, 2021 15:35
Show Gist options
  • Save nmchenry01/f63b2a5fdaf900c1b501fdb1bc56906e to your computer and use it in GitHub Desktop.
Save nmchenry01/f63b2a5fdaf900c1b501fdb1bc56906e to your computer and use it in GitHub Desktop.
An example of registering an Authorization middleware in .NET Core
public class Startup
{
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public void ConfigureServices(IServiceCollection services)
{
// Auth0 configuration
var domain = auth0Configuration.GetSection("Auth0").GetValue<string>("Domain");
// Add Authorization service/handler
services.AddAuthorization(
options =>
{
options.AddPolicy(
"admin",
// See https://auth0.com/docs/quickstart/backend/aspnet-core-webapi/01-authorization#validate-scopes for details
policy => policy.Requirements.Add(new HasScopeRequirement(domain, "admin"))
);
}
);
// See https://auth0.com/docs/quickstart/backend/aspnet-core-webapi/01-authorization#validate-scopes for details
services.AddSingleton<IAuthorizationHandler, HasScopeHandler>();
// ... other service registration omitted for brevity
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// Add Authorization middleware
app.UseAuthorization();
// ... other configuration omitted for brevity
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment