Skip to main content

AuthorizationRequestProcessorDecorator Class

Abblix.Oidc.Server

Abblix.Oidc.Server.Features.SessionManagement

AuthorizationRequestProcessorDecorator Class

Enhances an existing authorization request processor with session management capabilities, specifically tailored for OpenID Connect (OIDC) scenarios. This decorator introduces session state handling into the authorization response, enabling clients to maintain and manage session state in accordance with OpenID Connect session management specifications.

public class AuthorizationRequestProcessorDecorator : Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationRequestProcessor

Inheritance System.Object → AuthorizationRequestProcessorDecorator

Implements IAuthorizationRequestProcessor

Constructors

AuthorizationRequestProcessorDecorator(IAuthorizationRequestProcessor, ISessionManagementService) Constructor

Enhances an existing authorization request processor with session management capabilities, specifically tailored for OpenID Connect (OIDC) scenarios. This decorator introduces session state handling into the authorization response, enabling clients to maintain and manage session state in accordance with OpenID Connect session management specifications.

public AuthorizationRequestProcessorDecorator(Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationRequestProcessor inner, Abblix.Oidc.Server.Features.SessionManagement.ISessionManagementService sessionManagementService);

Parameters

inner IAuthorizationRequestProcessor

The authorization request processor to be enhanced with session management functionality.

sessionManagementService ISessionManagementService

The session management service responsible for generating and handling session state information.

Methods

AuthorizationRequestProcessorDecorator.ProcessAsync(ValidAuthorizationRequest) Method

Delegates to the wrapped processor and, when session management is enabled and the response is a successful OpenID Connect authentication, attaches the OIDC Session Management 1.0 session_state value so the client's check_session_iframe can detect session changes.

public System.Threading.Tasks.Task<Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationResponse> ProcessAsync(Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.ValidAuthorizationRequest request);

Parameters

request ValidAuthorizationRequest

The authorization request to be processed, expected to be a valid and authenticated request.

Implements ProcessAsync(ValidAuthorizationRequest)

Returns

System.Threading.Tasks.Task<AuthorizationResponse>
The inner processor's AuthorizationResponse, with session_state populated when applicable.