Skip to main content

IProofValidator Interface

Abblix.Oidc.Server

Abblix.Oidc.Server.Features.DPoP

IProofValidator Interface

Validates a DPoP proof JWT per RFC 9449 §4.2 / §4.3 (structure, signature, claim shape) but excluding replay-cache and nonce checks. Those layered checks land alongside the jti-replay-cache and DPoP-Nonce service in a separate slice and build on the Proof returned by a successful validation here.

public interface IProofValidator

Methods

IProofValidator.ValidateAsync(string, string, CancellationToken) Method

Validates proofJwt as a DPoP proof for the current request. The HTTP method and URI used for htm / htu binding checks come from IRequestInfoProvider injected into the validator, so callers never need to thread them through. When accessToken is supplied (the proof accompanies a bearer-style access-token presentation), the proof's ath claim is verified against the access-token hash per RFC 9449 §4.2.

System.Threading.Tasks.Task<Abblix.Utils.Result<Abblix.Oidc.Server.Features.DPoP.Proof,Abblix.Oidc.Server.Features.DPoP.ProofError>> ValidateAsync(string proofJwt, string? accessToken=null, System.Threading.CancellationToken cancellationToken=default(System.Threading.CancellationToken));

Parameters

proofJwt System.String

The compact JWS form of the DPoP proof, taken from the DPoP request header.

accessToken System.String

The access token presented alongside the proof, when the proof secures a resource-server request. null at the token endpoint where no access token is yet bound.

cancellationToken System.Threading.CancellationToken

Cancellation token for the asynchronous call.

Returns

System.Threading.Tasks.Task<Abblix.Utils.Result<Proof,ProofError>>
A Abblix.Utils.Result<>: Proof when every validation step passes, otherwise ProofError describing the failure reason.