Table of Contents

Class DPoPProofValidationContext

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

What a proof has to be checked against: the request it claims to be for.

public class DPoPProofValidationContext
Inheritance
DPoPProofValidationContext
Inherited Members

Remarks

Settable and open, as Duende 8.0.1's is, so a host's validator can carry more through its own steps.

Properties

AccessToken

The access token presented alongside the proof, read when ValidateAccessToken is set.

public string? AccessToken { get; set; }

Property Value

string

AccessTokenClaims

The claims that token was found to carry, where its cnf is.

public IEnumerable<Claim> AccessTokenClaims { get; set; }

Property Value

IEnumerable<Claim>

ClientClockSkew

The client's DPoPClockSkew, or null for DPoPOptions.ClientClockSkew.

public TimeSpan? ClientClockSkew { get; set; }

Property Value

TimeSpan?

ExpirationValidationMode

How the proof is held to a time: the client's DPoPValidationMode.

public DPoPTokenExpirationValidationMode ExpirationValidationMode { get; set; }

Property Value

DPoPTokenExpirationValidationMode

Method

The HTTP method of the request the proof is for.

public string Method { get; set; }

Property Value

string

ProofToken

The proof, as it arrived in the DPoP header. Duende's name; Proof until 0.138.0.

public string? ProofToken { get; set; }

Property Value

string

Url

The URL of the request the proof is for. Its query and fragment are not compared.

public string Url { get; set; }

Property Value

string

ValidateAccessToken

Whether the proof is checked against AccessToken: its ath, and the token's cnf against the proof's key. Duende's.

public bool ValidateAccessToken { get; set; }

Property Value

bool

Remarks

Set where a token is being used rather than obtained. The token endpoint has no access token yet, so a proof presented there carries no ath and must not be required to.