Skip to content

BackChannelLogoutResult Class

What a back-channel logout request earns: the status code the transport answers with, and - only beside a 400 - the error body the provider reads (OpenID Connect Back-Channel Logout 1.0 Section 2.8). The shape is transport-neutral on purpose: any host adapter renders it, none decides it.

C#
public sealed record BackChannelLogoutResult : System.IEquatable<Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutResult>

Inheritance System.Object → BackChannelLogoutResult

Implements System.IEquatable<BackChannelLogoutResult>

Constructors

BackChannelLogoutResult(HttpStatusCode, BackChannelLogoutError) Constructor

What a back-channel logout request earns: the status code the transport answers with, and - only beside a 400 - the error body the provider reads (OpenID Connect Back-Channel Logout 1.0 Section 2.8). The shape is transport-neutral on purpose: any host adapter renders it, none decides it.

C#
public BackChannelLogoutResult(System.Net.HttpStatusCode StatusCode, Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutError? Error);

Parameters

StatusCode System.Net.HttpStatusCode

The HTTP status the response carries.

Error BackChannelLogoutError

The error body of a failure response; null on success, whose body is empty.

Properties

BackChannelLogoutResult.Error Property

The error body of a failure response; null on success, whose body is empty.

C#
public Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutError? Error { get; init; }

Property Value

BackChannelLogoutError

BackChannelLogoutResult.Ok Property

The success: "If the logout succeeded, the RP MUST respond with HTTP 200 OK." A single shared instance, because success carries no request-specific state.

C#
public static Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutResult Ok { get; }

Property Value

BackChannelLogoutResult

Remarks

Section 2.8 notes that a framework may turn this into a 204 when the body is empty, and that providers should accept either. Which of the two goes out is therefore the host adapter's business, not a decision to make here.

BackChannelLogoutResult.StatusCode Property

The HTTP status the response carries.

C#
public System.Net.HttpStatusCode StatusCode { get; init; }

Property Value

System.Net.HttpStatusCode

Methods

BackChannelLogoutResult.BadRequest(string) Method

A rejection: "If the logout request was invalid or the logout failed, the RP MUST respond with HTTP 400 Bad Request."

C#
public static Abblix.SecurityEvents.BackChannelLogout.BackChannelLogoutResult BadRequest(string description);

Parameters

description System.String

What was wrong, for an operator reading the provider's logs.

Returns

BackChannelLogoutResult