Documentation ¶
Index ¶
Constants ¶
View Source
const (
DPoPJWTTyp = "dpop+jwt"
)
Variables ¶
View Source
var DependencySet = wire.NewSet( wire.Struct(new(Provider), "*"), wire.Struct(new(Middleware), "*"), )
View Source
var ErrInvalidHTU = newInvalidDPoPProofError("htu in the DPoP proof is not a valid URI")
View Source
var ErrInvalidJwk = newInvalidDPoPProofError("invalid DPoP jwk")
View Source
var ErrInvalidJwt = newInvalidDPoPProofError("invalid DPoP jwt")
View Source
var ErrInvalidJwtPayload = newInvalidDPoPProofError("invalid DPoP jwt payload")
View Source
var ErrInvalidJwtSignature = newInvalidDPoPProofError("invalid DPoP jwt signature")
View Source
var ErrInvalidJwtType = newInvalidDPoPProofError("invalid DPoP jwt typ")
View Source
var ErrMalformedJwt = newInvalidDPoPProofError("malformed DPoP jwt")
View Source
var ErrProofExpired = newInvalidDPoPProofError("DPoP proof expired")
View Source
var ErrUnmatchedMethod = newInvalidDPoPProofError("htm in the DPoP proof does not match request method")
View Source
var ErrUnmatchedURI = newInvalidDPoPProofError("htu in the DPoP proof does not match request uri")
View Source
var ErrUnsupportedAlg = newInvalidDPoPProofError("unsupported alg in DPoP jwt")
View Source
var InvalidDPoPProof = "invalid_dpop_proof"
From https://datatracker.ietf.org/doc/html/rfc9449#section-12.2
View Source
var SupportedAlgorithms = []string{"ES256", "RS256"}
Functions ¶
func IsSupportedAlgorithms ¶
Types ¶
type DPoPProof ¶
type DPoPProof struct { JTI string `json:"jti"` // An unique identifier of the DPoP jwt HTM string `json:"htm"` // The request method HTU *url.URL `json:"htu"` // The request uri // https://datatracker.ietf.org/doc/html/rfc9449#section-6.1 JKT string `json:"jkt"` // base64url encoding of the JWK SHA-256 Thumbprint }
https://datatracker.ietf.org/doc/html/rfc9449#section-4.2
func GetDPoPProof ¶
type Middleware ¶
type Middleware struct {
DPoPProvider *Provider
}
type Provider ¶
type Provider struct { Clock clock.Clock HTTPOrigin httputil.HTTPOrigin }
func (*Provider) CompareHTM ¶
func (*Provider) CompareHTU ¶
Click to show internal directories.
Click to hide internal directories.