BackChannelLogoutHandler Class
Takes one back-channel logout request from the transport and answers it: reads the
logout_token out of the posted form, puts it through the receiver's profile, hands the
notification to the application, and shapes the response
(OpenID Connect Back-Channel Logout 1.0 Sections 2.5 and 2.8).
public sealed class BackChannelLogoutHandlerInheritance System.Object → BackChannelLogoutHandler
Remarks
Transport-neutral, like the push intake beside it: it takes the two things any adapter has - the content type and the body - and returns a result the adapter renders. That keeps the specification's request and response rules in one place rather than in each host framework's endpoint.
Constructors
BackChannelLogoutHandler(ILogger<BackChannelLogoutHandler>, ILogoutTokenValidator, ILogoutNotificationSink) Constructor
Takes one back-channel logout request from the transport and answers it: reads the
logout_token out of the posted form, puts it through the receiver's profile, hands the
notification to the application, and shapes the response
(OpenID Connect Back-Channel Logout 1.0 Sections 2.5 and 2.8).
public BackChannelLogoutHandler(Microsoft.Extensions.Logging.ILogger<Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutHandler> logger, Abblix.SecurityEvents.BackChannelLogout.ILogoutTokenValidator validator, Abblix.SecurityEvents.BackChannelLogout.ILogoutNotificationSink sink);Parameters
logger Microsoft.Extensions.Logging.ILogger<BackChannelLogoutHandler>
Records every refusal, which no other party keeps.
validator ILogoutTokenValidator
The Logout Token's validation, which is Section 2.6.
sink ILogoutNotificationSink
Where the notification lands, which is Section 2.7.
Remarks
Transport-neutral, like the push intake beside it: it takes the two things any adapter has - the content type and the body - and returns a result the adapter renders. That keeps the specification's request and response rules in one place rather than in each host framework's endpoint.
Methods
BackChannelLogoutHandler.HandleAsync(string, string, CancellationToken) Method
Handles one logout request.
public System.Threading.Tasks.Task<Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutResult> HandleAsync(string? contentType, string? body, System.Threading.CancellationToken cancellationToken=default(System.Threading.CancellationToken));Parameters
contentType System.String
The request's Content-Type header, as received.
body System.String
The request body: a form-encoded parameter list.
cancellationToken System.Threading.CancellationToken
Cancels validation I/O and processing.