Table of Contents

Class SecretValidator

Namespace
Fdyay.IdentityServer.Validation
Assembly
Fdyay.IdentityServer.Core.dll

Supports all classes in the .NET class hierarchy and provides low-level services to derived classes. This is the ultimate base class of all .NET classes; it is the root of the type hierarchy.

public sealed class SecretValidator : ISecretsListValidator
Inheritance
SecretValidator
Implements
Inherited Members

Constructors

SecretValidator(TimeProvider, IEnumerable<ISecretValidator>, ILogger<ISecretsListValidator>)

Creates the validator.

public SecretValidator(TimeProvider time, IEnumerable<ISecretValidator> validators, ILogger<ISecretsListValidator> logger)

Parameters

time TimeProvider

The clock a stored secret's expiration is judged against.

validators IEnumerable<ISecretValidator>

The registered secret validators, asked in registration order.

logger ILogger<ISecretsListValidator>

Where a credential no validator accepted is logged.

Methods

ValidateAsync(IEnumerable<Secret>, ParsedSecret, CancellationToken)

Checks the presented credential against the stored secrets, asking each secret validator in turn.

public Task<SecretValidationResult> ValidateAsync(IEnumerable<Secret> secrets, ParsedSecret parsedSecret, CancellationToken cancellationToken = default)

Parameters

secrets IEnumerable<Secret>

The stored secrets of the client or API.

parsedSecret ParsedSecret

The credential a secret parser read off the request.

cancellationToken CancellationToken

Cancels the check.

Returns

Task<SecretValidationResult>

The first successful result, or failure when no validator accepted the credential.

Remarks

Expired secrets are dropped before any validator is asked, so no validator sees one.

Exceptions

ArgumentNullException

secrets or parsedSecret is null.