CompositeLogoutNotifier Class
Abblix.Oidc.Server
Abblix.Oidc.Server.Features.LogoutNotification
CompositeLogoutNotifier Class
Provides a mechanism to aggregate and execute multiple logout notification strategies for an OpenID Connect or OAuth 2.0 system.
public class CompositeLogoutNotifier : Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier
Inheritance System.Object → CompositeLogoutNotifier
Implements ILogoutNotifier
Remarks
This class allows the system to support various logout mechanisms simultaneously, such as front-channel and back-channel logout, by combining multiple ILogoutNotifier implementations. It ensures that all configured logout notifiers are invoked to notify clients about the logout event, catering to different client capabilities and configurations.
Constructors
CompositeLogoutNotifier(ILogoutNotifier[]) Constructor
Provides a mechanism to aggregate and execute multiple logout notification strategies for an OpenID Connect or OAuth 2.0 system.
public CompositeLogoutNotifier(Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier[] logoutNotifiers);
Parameters
logoutNotifiers ILogoutNotifier[]
An array of ILogoutNotifier implementations for handling logout notifications.
Remarks
This class allows the system to support various logout mechanisms simultaneously, such as front-channel and back-channel logout, by combining multiple ILogoutNotifier implementations. It ensures that all configured logout notifiers are invoked to notify clients about the logout event, catering to different client capabilities and configurations.
Properties
CompositeLogoutNotifier.BackChannelLogoutSessionSupported Property
Indicates whether the logout notifier supports back-channel logout session management, facilitating the management of user sessions during a back-channel logout.
public bool BackChannelLogoutSessionSupported { get; }
Implements BackChannelLogoutSessionSupported
Property Value
CompositeLogoutNotifier.BackChannelLogoutSupported Property
Indicates whether the logout notifier supports back-channel logout, enabling server-to-server communication to notify clients of logout events.
public bool BackChannelLogoutSupported { get; }
Implements BackChannelLogoutSupported
Property Value
CompositeLogoutNotifier.FrontChannelLogoutSessionSupported Property
Indicates whether the logout notifier supports front-channel logout session management, allowing for more precise control over session termination during a front-channel logout.
public bool FrontChannelLogoutSessionSupported { get; }
Implements FrontChannelLogoutSessionSupported
Property Value
CompositeLogoutNotifier.FrontChannelLogoutSupported Property
Indicates whether the logout notifier supports front-channel logout, enabling clients to be notified of logout events via user-agent redirection.
public bool FrontChannelLogoutSupported { get; }
Implements FrontChannelLogoutSupported
Property Value
Methods
CompositeLogoutNotifier.NotifyClientAsync(ClientInfo, LogoutContext) Method
Asynchronously notifies all configured clients about a logout event by invoking each registered logout notifier.
public System.Threading.Tasks.Task NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo clientInfo, Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext logoutContext);
Parameters
clientInfo ClientInfo
The information about the client that is being notified of the logout event.
logoutContext LogoutContext
Contextual information related to the logout event, including the user and session identifiers.
Implements NotifyClientAsync(ClientInfo, LogoutContext)
Returns
System.Threading.Tasks.Task
A task that completes when all clients are notified.
Remarks
This method ensures that each logout notifier is called, regardless of the individual notifier's outcome. It allows for a unified approach to logout notifications, accommodating various client requirements and logout mechanisms.