ValidAuthorizationRequest Class
Output of IAuthorizationRequestValidator handed to IAuthorizationRequestProcessor. Snapshot of the data resolved during validation: the wire-level request, the authenticated client, the negotiated response mode (per OAuth 2.0 Multiple Response Types / Form Post), and the materialized scope and resource definitions ready for consent and token issuance.
public record ValidAuthorizationRequest : System.IEquatable<Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.ValidAuthorizationRequest>Inheritance System.Object → ValidAuthorizationRequest
Implements System.IEquatable<ValidAuthorizationRequest>
Constructors
ValidAuthorizationRequest(AuthorizationValidationContext) Constructor
Snapshots the validated state from the shared AuthorizationValidationContext once the validator pipeline has completed.
public ValidAuthorizationRequest(Abblix.Oidc.Server.Endpoints.Authorization.Validation.AuthorizationValidationContext context);Parameters
context AuthorizationValidationContext
Properties
ValidAuthorizationRequest.AuthorizationDetails Property
RFC 9396 Rich Authorization Requests array, snapshot from
AuthorizationDetails at the end of the validator pipeline --
i.e. post per-client allowlist filtering and post per-type validator narrow/extend mutations.
IUserConsentsProvider reads this slot to render the consent UI;
downstream consent emits its (possibly further-narrowed) decision via
AuthorizationDetails.
null when the request did not include authorization_details.
public System.Text.Json.Nodes.JsonArray? AuthorizationDetails { get; init; }Property Value
System.Text.Json.Nodes.JsonArray
ValidAuthorizationRequest.ClientInfo Property
Information about the client making the request, as determined during validation.
public Abblix.Oidc.Server.Features.ClientInformation.ClientInfo ClientInfo { get; init; }Property Value
ValidAuthorizationRequest.IdTokenHintSubject Property
The end user the request's id_token_hint names, as that ID token spells it, or null
when the request carried no hint.
public string? IdTokenHintSubject { get; init; }Property Value
Remarks
For a pairwise client this is the pseudonym sealed to that client's sector rather than the subject a session carries, so a comparison converts the session forward rather than opening this.
ValidAuthorizationRequest.Model Property
The original or recovered request model that was validated.
public Abblix.Oidc.Server.Model.AuthorizationRequest Model { get; init; }Property Value
ValidAuthorizationRequest.RequestedSubjects Property
The end users the request's claims parameter will accept for sub, or null when it
asked for none in particular. An empty array accepts nobody.
public string[]? RequestedSubjects { get; init; }Property Value
Remarks
Independent of IdTokenHintSubject - a request may state both, and both bind. Spelled the way the client wrote them, so a comparison converts the session forward rather than opening these.
ValidAuthorizationRequest.RequestUri Property
The pushed authorization request URN (RFC 9126) this request was resolved from, or null when
the request was not pushed. Surfaced here so the single-use decorator can consume it once a code or
token has been issued, without reaching into Model.
public System.Uri? RequestUri { get; init; }Property Value
ValidAuthorizationRequest.Resources Property
The resources associated with the authorization request, detailing the specific resources the client is requesting access to.
public Abblix.Oidc.Server.Common.Constants.ResourceDefinition[] Resources { get; set; }Property Value
ValidAuthorizationRequest.ResponseMode Property
The response mode to be used for delivering the authorization response.
public string ResponseMode { get; init; }Property Value
ValidAuthorizationRequest.Scope Property
The scope associated with the authorization request, indicating the permissions requested by the client.
public Abblix.Oidc.Server.Common.Constants.ScopeDefinition[] Scope { get; set; }