JwtValidator

soidc.core.JwtValidator
See theJwtValidator companion object
trait JwtValidator[F[_], H, C]

Validate JWT token.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class OpenIdJwtValidator[F, H, C]

Members list

Value members

Abstract methods

def validate(jws: JWSDecoded[H, C]): F[Result]

Concrete methods

infix def ++(next: JwtValidator[F, H, C])(using Monad[F]): JwtValidator[F, H, C]

Run this validator and then next and combine their results.

Run this validator and then next and combine their results.

Attributes

def andThen(next: Result => JwtValidator[F, H, C])(using Monad[F]): JwtValidator[F, H, C]

Run this validator and then the result of next and combine their results.

Run this validator and then the result of next and combine their results.

Attributes

def forIssuer(f: String => Boolean)(using sc: StandardClaimsRead[C], F: Applicative[F]): JwtValidator[F, H, C]

Scopes this validator to only apply if an issuer exists in the claim and it matches the given function.

Scopes this validator to only apply if an issuer exists in the claim and it matches the given function.

Attributes

def invalidToNotApplicable(using Monad[F]): JwtValidator[F, H, C]

Converts an invalid result to a not-applicable result.

Converts an invalid result to a not-applicable result.

Attributes

infix def orElse(next: => JwtValidator[F, H, C])(using Monad[F]): JwtValidator[F, H, C]

If this validator returns a "not applicable" result, the next validator is tried.

If this validator returns a "not applicable" result, the next validator is tried.

Attributes

infix def orElseF(next: => F[JwtValidator[F, H, C]])(using Monad[F]): JwtValidator[F, H, C]

If this validator returns a "not applicable" result, the next validator is tried.

If this validator returns a "not applicable" result, the next validator is tried.

Attributes

def scoped(enable: (JWSDecoded[H, C]) => Boolean)(using Applicative[F]): JwtValidator[F, H, C]

Return a not-applicable result if the result of enable is false. Otherwise run this validator.

Return a not-applicable result if the result of enable is false. Otherwise run this validator.

Attributes

def toDecodingValidator(using Applicative[F]): JwtDecodingValidator[F, H, C]
def toDecryptingValidator(key: JWK)(using Applicative[F]): JwtDecryptingValidator[F, H, C]