Class ArcAuthorizationPolicyRuntime
- Namespace
- Cratis.Arc.Authorization
- Assembly
- Cratis.Arc.Core.dll
Evaluates native Arc policies; the standalone host cannot authenticate named schemes.
public class ArcAuthorizationPolicyRuntime : IAuthorizationPolicyRuntime
- Inheritance
-
ArcAuthorizationPolicyRuntime
- Implements
- Inherited Members
- Extension Methods
Constructors
ArcAuthorizationPolicyRuntime(IEnumerable<AuthorizationPolicyRegistration>)
Evaluates native Arc policies; the standalone host cannot authenticate named schemes.
public ArcAuthorizationPolicyRuntime(IEnumerable<AuthorizationPolicyRegistration> registrations)
Parameters
registrationsIEnumerable<AuthorizationPolicyRegistration>Named policy registrations.
Methods
HasPolicy(string)
Checks whether a name identifies exactly one native policy.
public bool HasPolicy(string name)
Parameters
namestringThe policy name.
Returns
- bool
Whether it is registered.
Exceptions
- InvalidAuthorizationConfiguration
The policy name is ambiguous.
Resolve(IReadOnlyList<AuthorizationRequirement>, IServiceProvider, CancellationToken)
Resolves and validates policies and schemes once for an admission attempt.
public Task<IAuthorizationPolicyResolution> Resolve(IReadOnlyList<AuthorizationRequirement> requirements, IServiceProvider services, CancellationToken cancellationToken)
Parameters
requirementsIReadOnlyList<AuthorizationRequirement>The effective requirements.
servicesIServiceProviderThe executing service scope.
cancellationTokenCancellationTokenCancellation.
Returns
- Task<IAuthorizationPolicyResolution>
A stable operation-local policy resolution.
Validate(IReadOnlyList<AuthorizationRequirement>, IServiceProvider, CancellationToken)
Validates every requirement before admission or startup.
public Task Validate(IReadOnlyList<AuthorizationRequirement> requirements, IServiceProvider services, CancellationToken cancellationToken)
Parameters
requirementsIReadOnlyList<AuthorizationRequirement>The requirements.
servicesIServiceProviderThe current service scope.
cancellationTokenCancellationTokenCancellation.
Returns
- Task
The validation operation.