Skip to main content

PollModeGrantProcessor Class

Abblix.Oidc.Server

Abblix.Oidc.Server.Features.BackChannelAuthentication.GrantProcessors

PollModeGrantProcessor Class

Handles CIBA poll mode token retrieval at the token endpoint. In poll mode, clients repeatedly poll until authentication completes. Tokens are removed from storage immediately after retrieval to prevent duplicate issuance. Uses atomic try-remove operation to prevent race conditions.

public class PollModeGrantProcessor : Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelGrantProcessor

Inheritance System.Object → PollModeGrantProcessor

Implements IBackChannelGrantProcessor

Constructors

PollModeGrantProcessor(IBackChannelRequestStorage) Constructor

Handles CIBA poll mode token retrieval at the token endpoint. In poll mode, clients repeatedly poll until authentication completes. Tokens are removed from storage immediately after retrieval to prevent duplicate issuance. Uses atomic try-remove operation to prevent race conditions.

public PollModeGrantProcessor(Abblix.Oidc.Server.Features.BackChannelAuthentication.Interfaces.IBackChannelRequestStorage storage);

Parameters

storage IBackChannelRequestStorage

Storage for backchannel authentication requests.

Methods

PollModeGrantProcessor.ProcessAuthenticatedRequestAsync(string, BackChannelAuthenticationRequest) Method

Atomically removes the authentication request from storage and returns its authorized grant. If a concurrent request already consumed the entry, returns an invalid_grant error to prevent duplicate token issuance.

public System.Threading.Tasks.Task<Abblix.Utils.Result<Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant,Abblix.Oidc.Server.Common.OidcError>> ProcessAuthenticatedRequestAsync(string authenticationRequestId, Abblix.Oidc.Server.Features.BackChannelAuthentication.BackChannelAuthenticationRequest request);

Parameters

authenticationRequestId System.String
request BackChannelAuthenticationRequest

Implements ProcessAuthenticatedRequestAsync(string, BackChannelAuthenticationRequest)

Returns

System.Threading.Tasks.Task<Abblix.Utils.Result<AuthorizedGrant,OidcError>>

PollModeGrantProcessor.ValidateTokenEndpointAccess() Method

Poll mode clients are expected to poll the token endpoint, so this always returns null (no error).

public Abblix.Oidc.Server.Common.OidcError? ValidateTokenEndpointAccess();

Implements ValidateTokenEndpointAccess()

Returns

OidcError