Class AuthorizationPolicyContext
- Namespace
- Cratis.Arc.Authorization
- Assembly
- Cratis.Arc.Core.dll
The caller and resource presented to an authorization policy.
public record AuthorizationPolicyContext : IEquatable<AuthorizationPolicyContext>
- Inheritance
-
AuthorizationPolicyContext
- Implements
- Inherited Members
- Extension Methods
Constructors
AuthorizationPolicyContext(AuthorizationPolicyContext)
protected AuthorizationPolicyContext(AuthorizationPolicyContext original)
Parameters
originalAuthorizationPolicyContext
AuthorizationPolicyContext(ClaimsPrincipal, MemberInfo, object)
The caller and resource presented to an authorization policy.
public AuthorizationPolicyContext(ClaimsPrincipal Principal, MemberInfo Target, object Resource)
Parameters
PrincipalClaimsPrincipalThe principal selected by the authorization schemes.
TargetMemberInfoThe command type or query method being authorized.
ResourceobjectThe command or query context.
Properties
EqualityContract
protected virtual Type EqualityContract { get; }
Property Value
Principal
The principal selected by the authorization schemes.
public ClaimsPrincipal Principal { get; init; }
Property Value
ReceivedAt
Gets the time Arc received the operation being authorized, not the network arrival time. A hand-constructed context has default unless the caller sets this property.
public DateTimeOffset ReceivedAt { get; init; }
Property Value
Resource
The command or query context.
public object Resource { get; init; }
Property Value
Target
The command type or query method being authorized.
public MemberInfo Target { get; init; }
Property Value
Methods
Deconstruct(out ClaimsPrincipal, out MemberInfo, out object)
public void Deconstruct(out ClaimsPrincipal Principal, out MemberInfo Target, out object Resource)
Parameters
PrincipalClaimsPrincipalTargetMemberInfoResourceobject
Equals(AuthorizationPolicyContext?)
Compares the public policy input: principal, target, resource and received time.
public virtual bool Equals(AuthorizationPolicyContext? other)
Parameters
otherAuthorizationPolicyContextThe context to compare with.
Returns
- bool
Whether both contexts present the same policy input.
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
builderStringBuilder
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(AuthorizationPolicyContext?, AuthorizationPolicyContext?)
public static bool operator ==(AuthorizationPolicyContext? left, AuthorizationPolicyContext? right)
Parameters
Returns
operator !=(AuthorizationPolicyContext?, AuthorizationPolicyContext?)
public static bool operator !=(AuthorizationPolicyContext? left, AuthorizationPolicyContext? right)