JwksAccessTokenVerifier

@Component
class JwksAccessTokenVerifier(@Value(value = "${security.jwt.jwks-uri:http://localhost:8088/.well-known/jwks.json}") jwksUri: String, @Value(value = "${security.jwt.issuer:https://api.cryptotrader.com}") issuer: String, @Value(value = "${security.jwt.issuers:}") issuersCsv: String, @Value(value = "${security.jwt.audience:crypto-trader-api}") audienceCsv: String) : AccessTokenVerifier

Verifies JWT access tokens by resolving the signing key from the API's JWKS endpoint. Keeps a simple in-memory cache of kid -> RSAPublicKey and refreshes on cache miss.

Constructors

Link copied to clipboard
constructor(@Value(value = "${security.jwt.jwks-uri:http://localhost:8088/.well-known/jwks.json}") jwksUri: String, @Value(value = "${security.jwt.issuer:https://api.cryptotrader.com}") issuer: String, @Value(value = "${security.jwt.issuers:}") issuersCsv: String, @Value(value = "${security.jwt.audience:crypto-trader-api}") audienceCsv: String)

Functions

Link copied to clipboard
open override fun validateAndParse(token: String): JwtClaims