Custom authorization policies and handlers?
Define complex authorization rules using IAuthorizationHandler:
public class MinimumAgeRequirement : IAuthorizationRequirement {
public int Age { get; }
public MinimumAgeRequirement(int age) => Age = age;
public class MinimumAgeHandler :
AuthorizationHandler<MinimumAgeRequirement> {
protected override Task HandleRequirementAsync(...) {
// logic
Register in DI and use with [Authorize(Policy = "...")].