Quick tip for anyone using ASP.NET Core 3.0 (especially when you did an upgrade from ASP.NET Core 2.x); if you want to enable authentication don’t forget to add the correct middleware. You need both UseAuthentication and UseAuthorization:
In earlier versions of ASP.NET Core, authorization support was provided via the [Authorize]
attribute. Authorization middleware wasn't available. In ASP.NET Core 3.0, authorization middleware is required(!). Therefore the ASP.NET Core Authorization Middleware (UseAuthorization
) should be placed immediately after UseAuthentication
.
Add the UseAuthorization
and UseAuthentication methods AFTER the UseRouting() but BEFORE the UseEndpoints():
A DefaultPolicy
is initially configured to require authentication, so no additional configuration is required.