Table of Contents

Class DistributedBackchannelAuthenticationThrottlingService

Namespace
Fdyay.IdentityServer.Services
Assembly
Fdyay.IdentityServer.Core.dll

CIBA's polling throttle, kept in IDistributedCache. Duende's.

public sealed class DistributedBackchannelAuthenticationThrottlingService : IBackchannelAuthenticationThrottlingService
Inheritance
DistributedBackchannelAuthenticationThrottlingService
Implements
Inherited Members

Remarks

Duende 8.0.1's DistributedBackchannelAuthenticationThrottlingService, measured, keyed per request. The interval is the request's own — the one its response advertised, the client's when it asked for longer — where Duende's reads the client's registration again. The default from 0.131.0, in place of InMemoryBackChannelAuthenticationThrottlingService.

Constructors

DistributedBackchannelAuthenticationThrottlingService(IDistributedCache, TimeProvider)

A throttle kept in cache, at each request's own interval.

public DistributedBackchannelAuthenticationThrottlingService(IDistributedCache cache, TimeProvider time)

Parameters

cache IDistributedCache

The distributed cache the last poll's time is kept in.

time TimeProvider

The clock a poll is timed by.

Methods

ShouldSlowDownAsync(string, BackChannelAuthenticationRequest, CancellationToken)

Records this poll and returns true if it arrived sooner than the interval allows.

public Task<bool> ShouldSlowDownAsync(string authenticationRequestId, BackChannelAuthenticationRequest request, CancellationToken cancellationToken = default)

Parameters

authenticationRequestId string
request BackChannelAuthenticationRequest
cancellationToken CancellationToken

Returns

Task<bool>