Class AuthorizationDeclaration

Namespace
Cratis.Arc.Authorization
Assembly
Cratis.Arc.Core.dll

The effective authorization requirements on one member.

public record AuthorizationDeclaration : IEquatable<AuthorizationDeclaration>
Inheritance
AuthorizationDeclaration
Implements
Inherited Members
Extension Methods

Constructors

AuthorizationDeclaration(AuthorizationDeclaration)

protected AuthorizationDeclaration(AuthorizationDeclaration original)

Parameters

original AuthorizationDeclaration

AuthorizationDeclaration(bool, bool, IReadOnlyList<AuthorizationRequirement>)

The effective authorization requirements on one member.

public AuthorizationDeclaration(bool AllowsAnonymous, bool IsExplicit, IReadOnlyList<AuthorizationRequirement> Requirements)

Parameters

AllowsAnonymous bool

Whether access is anonymous.

IsExplicit bool

Whether an attribute declares authorization on this member.

Requirements IReadOnlyList<AuthorizationRequirement>

All requirements, combined with AND.

Properties

AllowsAnonymous

Whether access is anonymous.

public bool AllowsAnonymous { get; init; }

Property Value

bool

EqualityContract

protected virtual Type EqualityContract { get; }

Property Value

Type

IsExplicit

Whether an attribute declares authorization on this member.

public bool IsExplicit { get; init; }

Property Value

bool

Requirements

All requirements, combined with AND.

public IReadOnlyList<AuthorizationRequirement> Requirements { get; init; }

Property Value

IReadOnlyList<AuthorizationRequirement>

RequiresAsynchronousEvaluation

Gets whether a policy or explicit scheme needs asynchronous evaluation.

public bool RequiresAsynchronousEvaluation { get; }

Property Value

bool

Methods

Deconstruct(out bool, out bool, out IReadOnlyList<AuthorizationRequirement>)

public void Deconstruct(out bool AllowsAnonymous, out bool IsExplicit, out IReadOnlyList<AuthorizationRequirement> Requirements)

Parameters

AllowsAnonymous bool
IsExplicit bool
Requirements IReadOnlyList<AuthorizationRequirement>

Equals(AuthorizationDeclaration?)

public virtual bool Equals(AuthorizationDeclaration? other)

Parameters

other AuthorizationDeclaration

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

PrintMembers(StringBuilder)

protected virtual bool PrintMembers(StringBuilder builder)

Parameters

builder StringBuilder

Returns

bool

ToString()

public override string ToString()

Returns

string

Operators

operator ==(AuthorizationDeclaration?, AuthorizationDeclaration?)

public static bool operator ==(AuthorizationDeclaration? left, AuthorizationDeclaration? right)

Parameters

left AuthorizationDeclaration
right AuthorizationDeclaration

Returns

bool

operator !=(AuthorizationDeclaration?, AuthorizationDeclaration?)

public static bool operator !=(AuthorizationDeclaration? left, AuthorizationDeclaration? right)

Parameters

left AuthorizationDeclaration
right AuthorizationDeclaration

Returns

bool