Table of Contents

Class BackChannelAuthenticationEndpoint

Namespace
Fdyay.IdentityServer.Endpoints
Assembly
Fdyay.IdentityServer.AspNetCore.dll

The backchannel authentication endpoint (OpenID Connect CIBA Core 1.0 §7).

public sealed class BackChannelAuthenticationEndpoint : IEndpointHandler
Inheritance
BackChannelAuthenticationEndpoint
Implements
Inherited Members

Remarks

Where a client asks this server to authenticate somebody who is not in front of it. There is no browser, no redirect and no user agent to bounce anything off, so the request is a client-authenticated POST that names a person, and the answer is a handle the client polls with while the server goes and finds them.

That shape puts every guarantee on client authentication. An authorization request can be sent by anyone, because it goes nowhere except a redirect URI the client registered; this one makes a stranger's phone buzz. So the endpoint refuses an unauthenticated caller before it looks at anything else, and refuses a client not registered for the grant before it resolves a hint — a client that may not use CIBA should not be able to discover which identifiers exist by watching the difference between two errors.

Constructors

BackChannelAuthenticationEndpoint(IClientSecretValidator, ISecretsListParser, IBackchannelAuthenticationRequestValidator, IBackchannelAuthenticationResponseGenerator, IEventService)

Creates the endpoint from its services, as the container resolves it.

public BackChannelAuthenticationEndpoint(IClientSecretValidator clientValidator, ISecretsListParser secretParser, IBackchannelAuthenticationRequestValidator requestValidator, IBackchannelAuthenticationResponseGenerator responseGenerator, IEventService events)

Parameters

clientValidator IClientSecretValidator

Authenticates the client from the credential it presented.

secretParser ISecretsListParser

Reads the client's credential from the request.

requestValidator IBackchannelAuthenticationRequestValidator

Validates the backchannel authentication request's parameters.

responseGenerator IBackchannelAuthenticationResponseGenerator

Stores the validated request and builds the response carrying its auth_req_id.

events IEventService

Receives the endpoint's success and failure events.

Methods

ProcessAsync(HttpContext)

Processes the request, or returns null to pass the request through.

public Task<IEndpointResult?> ProcessAsync(HttpContext context)

Parameters

context HttpContext

Returns

Task<IEndpointResult>