3using System.Threading.Tasks;
 
    5using Microsoft.AspNetCore.Authorization;
 
   32            Authority = authority ?? 
throw new ArgumentNullException(nameof(authority));
 
 
   37        async ValueTask<IQueryable<TResult>?> 
IAuthorityInvoker<TAuthority>.InvokeQueryable<TResult>(Func<TAuthority, RequirementsGated<IQueryable<TResult>>> authorityInvoker)
 
   39            ArgumentNullException.ThrowIfNull(authorityInvoker);
 
   41            var requirementsGate = authorityInvoker(
Authority);
 
   42            return await ExecuteIfRequirementsSatisfied(requirementsGate);
 
 
   54            var requirements = await requirementsGate.GetRequirements();
 
   55            var authorizationResult = await 
authorizationService.AuthorizeAsync(requirements, requirementsGate.InstanceId);
 
   57            if (!authorizationResult.Succeeded)
 
 
 
TAuthority Authority
The IAuthority being invoked.
 
readonly Security.IAuthorizationService authorizationService
The authorization service for the AuthorityInvokerBase<TAuthority>.
 
virtual void OnRequirementsFailure(AuthorizationFailure authFailure)
Called to handle generic behavior when requirements evaluation fails.
 
AuthorityInvokerBase(TAuthority authority, Security.IAuthorizationService authorizationService)
Initializes a new instance of the AuthorityInvokerBase<TAuthority> class.
 
async ValueTask< TResult?> ExecuteIfRequirementsSatisfied< TResult >(RequirementsGated< TResult > requirementsGate)
Unwrap a RequirementsGated<TResult> result, returning null if the requirements weren't satisfied.
 
Evaluates a set of IAuthorizationRequirements to be checked before executing a response.
 
Business logic for interating with the server.
 
Interface for evaluating IAuthorizationRequirements.