Sake.Auth.Client (Sake v0.4.3)

Copy Markdown View Source

An OAuth client: from a Client ID Metadata Document, dynamically registered, or registered by the host.

A client registered for private_key_jwt authentication carries its public keys: a JWK Set in jwks, or the URL of one in jwks_uri.

dpop_bound_access_tokens (RFC 9449 §5.2) says the client always uses DPoP: its token requests without a proof are refused.

require_pushed_authorization_requests (RFC 9126 §6) says the client only ever pushes its authorization requests: with par: on, the authorize endpoint refuses its requests that were not pushed.

inserted_at is when it was registered: a dynamically registered client that never came to hold a token or a consent is pruned some time after (see Sake.Auth.prune/1).

Summary

Types

t()

@type t() :: %Sake.Auth.Client{
  application_type: term(),
  client_uri: term(),
  dpop_bound_access_tokens: term(),
  grant_types: term(),
  id: term(),
  inserted_at: term(),
  jwks: term(),
  jwks_uri: term(),
  kind: term(),
  logo_uri: term(),
  name: term(),
  redirect_uris: term(),
  require_pushed_authorization_requests: term(),
  scopes: term(),
  secret_hash: term(),
  token_endpoint_auth_method: term()
}