Skip to main content

PushedAuthorizationHandler Class

Abblix.Oidc.Server

Abblix.Oidc.Server.Endpoints.PushedAuthorization

PushedAuthorizationHandler Class

Handles the processing of Pushed Authorization Requests (PAR) by validating the requests and then processing them if valid. This class acts as an intermediary between the validation and processing stages of the PAR workflow.

public class PushedAuthorizationHandler : Abblix.Oidc.Server.Endpoints.PushedAuthorization.Interfaces.IPushedAuthorizationHandler

Inheritance System.Object → PushedAuthorizationHandler

Implements IPushedAuthorizationHandler

Constructors

PushedAuthorizationHandler(IAuthorizationRequestFetcher, IPushedAuthorizationRequestValidator, IPushedAuthorizationRequestProcessor) Constructor

Handles the processing of Pushed Authorization Requests (PAR) by validating the requests and then processing them if valid. This class acts as an intermediary between the validation and processing stages of the PAR workflow.

public PushedAuthorizationHandler(Abblix.Oidc.Server.Endpoints.Authorization.RequestFetching.IAuthorizationRequestFetcher fetcher, Abblix.Oidc.Server.Endpoints.PushedAuthorization.Interfaces.IPushedAuthorizationRequestValidator validator, Abblix.Oidc.Server.Endpoints.PushedAuthorization.Interfaces.IPushedAuthorizationRequestProcessor processor);

Parameters

fetcher IAuthorizationRequestFetcher

An instance of IAuthorizationRequestFetcher used to resolve request / request_uri JAR payloads before validation.

validator IPushedAuthorizationRequestValidator

An instance of IPushedAuthorizationRequestValidator used for validating pushed authorization requests.

processor IPushedAuthorizationRequestProcessor

An instance of IPushedAuthorizationRequestProcessor used for processing validated authorization requests.

Methods

PushedAuthorizationHandler.HandleAsync(AuthorizationRequest, ClientRequest) Method

Asynchronously handles a pushed authorization request by first validating it and then processing it if the validation is successful.

public System.Threading.Tasks.Task<Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationResponse> HandleAsync(Abblix.Oidc.Server.Model.AuthorizationRequest authorizationRequest, Abblix.Oidc.Server.Model.ClientRequest clientRequest);

Parameters

authorizationRequest AuthorizationRequest

The authorization request details as received from the client.

clientRequest ClientRequest

Additional client request information that may be needed for contextual validation.

Implements HandleAsync(AuthorizationRequest, ClientRequest)

Returns

System.Threading.Tasks.Task<AuthorizationResponse>
A System.Threading.Tasks.Task that upon completion yields an AuthorizationResponse, which could be a successful response with the request being processed or an error response if the validation fails.

Remarks

This method ensures that pushed authorization requests are thoroughly validated against the system's criteria before proceeding with processing. This validation includes, but is not limited to, verifying the client's identity, the request's integrity, and its compliance with the system's policies. Successful validation leads to the processing of the request, which typically involves generating a request URI or an error response in case of failure.