Management Endpoints

When you add Duende.BFF to DI - a default implementation for every management endpoint gets registered:

// management endpoints
services.AddTransient<ILoginService, DefaultLoginService>();
services.AddTransient<ISilentLoginService, DefaultSilentLoginService>();
services.AddTransient<ISilentLoginCallbackService, DefaultSilentLoginCallbackService>();
services.AddTransient<ILogoutService, DefaultLogoutService>();
services.AddTransient<IUserService, DefaultUserService>();
services.AddTransient<IBackchannelLogoutService, DefaultBackchannelLogoutService>();
services.AddTransient<IDiagnosticsService, DefaultDiagnosticsService>();

You can add your own implementation, by overriding our default after calling AddBff().

The interface of the management endpoints is pretty generic, and allows for inserting any custom logic:

public interface IBffEndpointService
{
    Task ProcessRequestAsync(HttpContext context);
}