Summary
Auth0 is an OIDC identity provider that we can leverage to authenticate and authorize clients. An access token in JWT format is available from an identity provider when a successful sign-in has been made. An access token can be used in requests to access protected resources.
ASP.NET can validate JWTs by first using the AddAuthentication
method in the ConfigureServices
method in the Startup
class and then UseAuthentication
in the Configure
method.
Once authentication has been added to the request pipeline, REST API resources can be protected by decorating the controller and action methods using the Authorize
attribute. Protected action methods can then be unprotected by using the AllowAnonymous
attribute. We can access information about a user, such as their claims, via a controller's User
property.
Custom policies are a powerful way to allow a certain set of users to get access to protected resources. Requirement and handler classes must be implemented that define...