Skip to main content

BackChannelLogoutNotifier Class

Abblix.Oidc.Server

Abblix.Oidc.Server.Features.LogoutNotification

BackChannelLogoutNotifier Class

Implements the mechanism for notifying clients about logout events through the back-channel, leveraging logout tokens to securely communicate the logout state to client applications.

public class BackChannelLogoutNotifier : Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier

Inheritance System.Object → BackChannelLogoutNotifier

Implements ILogoutNotifier

Constructors

BackChannelLogoutNotifier(ILogoutTokenService, ILogoutTokenSender) Constructor

Implements the mechanism for notifying clients about logout events through the back-channel, leveraging logout tokens to securely communicate the logout state to client applications.

public BackChannelLogoutNotifier(Abblix.Oidc.Server.Features.Tokens.ILogoutTokenService logoutTokenService, Abblix.Oidc.Server.Features.LogoutNotification.ILogoutTokenSender logoutTokenSender);

Parameters

logoutTokenService ILogoutTokenService

The service responsible for creating logout tokens that encapsulate the details of the logout event.

logoutTokenSender ILogoutTokenSender

The service responsible for sending the logout tokens to the client applications via back-channel communication.

Properties

BackChannelLogoutNotifier.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

System.Boolean

BackChannelLogoutNotifier.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

System.Boolean

BackChannelLogoutNotifier.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

System.Boolean

BackChannelLogoutNotifier.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

System.Boolean

Methods

BackChannelLogoutNotifier.NotifyClientAsync(ClientInfo, LogoutContext) Method

Asynchronously notifies a client of a logout event by creating a logout token and sending it to the client's back-channel logout endpoint. This ensures that the client application is informed about the logout event and can take appropriate actions, such as invalidating the user's session.

public System.Threading.Tasks.Task NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo clientInfo, Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext logoutContext);

Parameters

clientInfo ClientInfo

The client information, including the back-channel logout URI, to which the logout notification should be sent.

logoutContext LogoutContext

The context of the logout event, containing details such as the subject identifier and session identifier, which are included in the logout token.

Implements NotifyClientAsync(ClientInfo, LogoutContext)

Returns

System.Threading.Tasks.Task
A task that completes when the notification has been successfully sent to the client's back-channel logout endpoint.