Class AuthorizationEvaluation
- Namespace
- Cratis.Arc.Authorization
- Assembly
- Cratis.Arc.Core.dll
Applies asynchronous policy and scheme requirements without replacing legacy evaluator verdicts.
public class AuthorizationEvaluation
- Inheritance
-
AuthorizationEvaluation
- Inherited Members
- Extension Methods
Constructors
AuthorizationEvaluation(AuthorizationDeclarations, IAuthorizationEvaluator, ICurrentPrincipalAccessor, IAuthorizationPolicyRuntime)
Applies asynchronous policy and scheme requirements without replacing legacy evaluator verdicts.
public AuthorizationEvaluation(AuthorizationDeclarations declarations, IAuthorizationEvaluator evaluator, ICurrentPrincipalAccessor principalAccessor, IAuthorizationPolicyRuntime runtime)
Parameters
declarationsAuthorizationDeclarationsThe effective declarations.
evaluatorIAuthorizationEvaluatorThe configured legacy evaluator.
principalAccessorICurrentPrincipalAccessorThe current principal.
runtimeIAuthorizationPolicyRuntimeThe host's policy and authentication runtime.
Methods
IsAuthorized(MemberInfo, object, IServiceProvider, CancellationToken, Func<bool>?)
Authorizes a command or query against its declaration.
public Task<bool> IsAuthorized(MemberInfo target, object resource, IServiceProvider services, CancellationToken cancellationToken, Func<bool>? legacyVerdict = null)
Parameters
targetMemberInfoThe command type or query method.
resourceobjectThe command or query context.
servicesIServiceProviderThe executing scope.
cancellationTokenCancellationTokenThe request cancellation token.
legacyVerdictFunc<bool>An optional query performer's legacy authorization verdict.
Returns
Exceptions
- InvalidAuthorizationConfiguration
The target or configuration is unsupported.