liveBook · Manning

AuthorizationPolicyBuilder

As explained in ASP.NET Core in Action, 3e

AuthorizationPolicyBuilder is the ASP.NET Core builder API for constructing authorization policies from requirements and other authorization conditions.

AuthorizationPolicyBuilder constructs ASP.NET Core authorization policies from requirements. Configure it inside AddPolicy in Program.cs, then apply the named policy with [Authorize]. section 24.3

Require a boarding-pass claim

builder.Services.AddAuthorizationBuilder() .AddPolicy("CanEnterSecurity", policyBuilder => policyBuilder.RequireClaim("BoardingPassNumber")); [Authorize("CanEnterSecurity")] public class AirportSecurityModel : PageModel { } The policy succeeds when the user has the BoardingPassNumber claim. RequireClaim can also require a specific value, such as "A1234". section 24.3

Use simple methods for direct claims or identity checks. For rules such as “at least 18, and either Gold frequent-flyer status or an employee number, but never banned,” add lightweight IAuthorizationRequirement objects and let authorization handlers evaluate them. Handlers can succeed, do nothing, or explicitly fail with context.Fail(). section 24.4 section 24.4.2

How ASP.NET Core in Action, 3e covers it

How deep it goes
Explains common builder methods and extends into custom requirements and handlers, but defers handler implementation details to separate types.
Examples
Uses boarding-pass security and airline-lounge access to demonstrate claim checks, multiple requirements, and explicit denial.
What it assumes
Assumes basic C# and ASP.NET Core configuration while teaching claims, policy requirements, and handler responsibilities.
What you can do after
Build it from scratch by registering named policies, adding requirements, and applying them to Razor Pages with [Authorize].
How it connects
Connects authorization policies with claims-based authorization, authorization requirements, authorization handlers, and dependency injection.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of ASP.NET Core in Action, 3e. The section links point to the parts of the book it draws on.