BackChannelAuthenticationRequestProcessor Class
Abblix.Oidc.Server
Abblix.Oidc.Server.Endpoints.BackChannelAuthentication
BackChannelAuthenticationRequestProcessor Class
Handles the processing of backchannel authentication requests in an OAuth 2.0/OpenID Connect context. This class is responsible for managing the lifecycle of a backchannel authentication request, from initiating the user's authentication on their device to storing the request for status polling. It ensures that the client is authorized, user-device authentication is initiated, and the request's status is properly stored and can be queried during the authentication process. The class coordinates various services like authentication storage, options configuration and user-device interaction, ensuring a seamless backchannel authentication flow.
public class BackChannelAuthenticationRequestProcessor : Abblix.Oidc.Server.Endpoints.BackChannelAuthentication.Interfaces.IBackChannelAuthenticationRequestProcessor
Inheritance System.Object → BackChannelAuthenticationRequestProcessor
Implements IBackChannelAuthenticationRequestProcessor
Constructors
BackChannelAuthenticationRequestProcessor(IBackChannelRequestStorage, IOptionsSnapshot<OidcOptions>, IUserDeviceAuthenticationHandler, TimeProvider) Constructor
Handles the processing of backchannel authentication requests in an OAuth 2.0/OpenID Connect context. This class is responsible for managing the lifecycle of a backchannel authentication request, from initiating the user's authentication on their device to storing the request for status polling. It ensures that the client is authorized, user-device authentication is initiated, and the request's status is properly stored and can be queried during the authentication process. The class coordinates various services like authentication storage, options configuration and user-device interaction, ensuring a seamless backchannel authentication flow.
public BackChannelAuthenticationRequestProcessor(Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage storage, Microsoft.Extensions.Options.IOptionsSnapshot<Abblix.Oidc.Server.Common.Configuration.OidcOptions> options, Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IUserDeviceAuthenticationHandler userDeviceAuthenticationHandler, System.TimeProvider timeProvider);
Parameters
storage IBackChannelRequestStorage
Service for storing and retrieving backchannel authentication requests.
options Microsoft.Extensions.Options.IOptionsSnapshot<OidcOptions>
Configuration options related to backchannel authentication.
userDeviceAuthenticationHandler IUserDeviceAuthenticationHandler
Handler for initiating authentication on the user's device.
timeProvider System.TimeProvider
Time provider for managing authentication request expiration.
Methods
BackChannelAuthenticationRequestProcessor.ProcessAsync(ValidBackChannelAuthenticationRequest) Method
Asynchronously processes a validated backchannel authentication request and generates an appropriate response. This method handles the business logic required to respond to a backchannel authentication request, including generating tokens, managing session state, and any other necessary operations.
public System.Threading.Tasks.Task<Abblix.Utils.Result<Abblix.Oidc.Server.Model.BackChannelAuthenticationSuccess,Abblix.Oidc.Server.Common.OidcError>> ProcessAsync(Abblix.Oidc.Server.Endpoints.BackChannelAuthentication.Interfaces.ValidBackChannelAuthenticationRequest request);
Parameters
request ValidBackChannelAuthenticationRequest
The validated backchannel authentication request containing the original request data and associated client information.
Implements ProcessAsync(ValidBackChannelAuthenticationRequest)
Returns
System.Threading.Tasks.Task<Abblix.Utils.Result<BackChannelAuthenticationSuccess,OidcError>>
A task that returns a Abblix.Utils.Result<> that contains the result of the processing,
such as an authentication request ID and the expires_in value.