Lockspire.Domain.Client (lockspire v1.0.0)

Copy Markdown

Durable client registration state owned by Lockspire.

Summary

Types

authorization_encrypted_response_alg()

@type authorization_encrypted_response_alg() :: :RSA_OAEP_256 | :ECDH_ES

authorization_encrypted_response_enc()

@type authorization_encrypted_response_enc() :: :A256GCM | :A128GCM

backchannel_token_delivery_mode()

@type backchannel_token_delivery_mode() :: :poll | :ping | :push

client_type()

@type client_type() :: :public | :confidential

dpop_policy()

@type dpop_policy() :: :inherit | :bearer | :dpop

par_policy()

@type par_policy() :: :inherit | :required | :optional

provenance()

@type provenance() :: :operator | :self_registered

security_profile()

@type security_profile() ::
  :inherit | :fapi_2_0_security | :fapi_2_0_message_signing | :none

signing_alg()

@type signing_alg() :: :RS256 | :ES256 | :PS256 | :EdDSA

subject_type()

@type subject_type() :: :public | :pairwise

t()

@type t() :: %Lockspire.Domain.Client{
  active: boolean(),
  allowed_grant_types: [String.t()],
  allowed_response_types: [String.t()],
  allowed_scopes: [String.t()],
  authorization_encrypted_response_alg:
    authorization_encrypted_response_alg() | nil,
  authorization_encrypted_response_enc:
    authorization_encrypted_response_enc() | nil,
  authorization_signed_response_alg: signing_alg() | nil,
  backchannel_client_notification_endpoint: String.t() | nil,
  backchannel_logout_session_required: boolean(),
  backchannel_logout_uri: String.t() | nil,
  backchannel_token_delivery_mode: backchannel_token_delivery_mode(),
  backchannel_user_code_parameter: boolean(),
  client_id: String.t(),
  client_id_issued_at: DateTime.t() | nil,
  client_secret_expires_at: DateTime.t() | nil,
  client_secret_hash: String.t() | nil,
  client_type: client_type(),
  contacts: [String.t()],
  created_at: DateTime.t() | nil,
  created_by: String.t() | nil,
  disabled_at: DateTime.t() | nil,
  disabled_by: String.t() | nil,
  dpop_policy: dpop_policy(),
  frontchannel_logout_session_required: boolean(),
  frontchannel_logout_uri: String.t() | nil,
  id: integer() | nil,
  id_token_signed_response_alg: signing_alg() | nil,
  initial_access_token_id: integer() | nil,
  inserted_at: DateTime.t() | nil,
  jwks: map() | nil,
  jwks_uri: String.t() | nil,
  last_secret_rotated_at: DateTime.t() | nil,
  logo_uri: String.t() | nil,
  max_delegation_depth: non_neg_integer() | nil,
  metadata: map(),
  name: String.t() | nil,
  par_policy: par_policy(),
  pkce_required: boolean(),
  policy_uri: String.t() | nil,
  post_logout_redirect_uris: [String.t()],
  provenance: provenance(),
  redirect_uris: [String.t()],
  registration_access_token_hash: String.t() | nil,
  registration_client_uri: String.t() | nil,
  sector_identifier_uri: String.t() | nil,
  security_profile: security_profile(),
  subject_type: subject_type(),
  tenant_id: String.t() | nil,
  token_endpoint_auth_method: token_endpoint_auth_method(),
  tos_uri: String.t() | nil,
  updated_at: DateTime.t() | nil
}

token_endpoint_auth_method()

@type token_endpoint_auth_method() ::
  :client_secret_basic | :client_secret_post | :private_key_jwt | :none