TamaOAuth.JWKS (tama_oauth v0.1.0)

Copy Markdown View Source

Validates, selects, and publishes JSON Web Key Sets.

Private key parameters are rejected at verification boundaries and stripped when producing a public JWKS document.

Summary

Types

t()

@type t() :: %TamaOAuth.JWKS.Set{keys: %{required(String.t()) => map()}}

Functions

fetch(jwks_uri, client_id, opts \\ [])

@spec fetch(String.t(), String.t(), keyword()) :: {:ok, t()} | {:error, atom()}

public_document(keys)

@spec public_document([term()]) :: {:ok, map()} | {:error, atom()}

select(jwks, kid, algorithm, opts \\ [])

@spec select(t() | map(), String.t(), String.t(), keyword()) ::
  {:ok, map()} | {:error, atom()}

validate(document, opts \\ [])

@spec validate(
  map(),
  keyword()
) :: {:ok, t()} | {:error, atom()}