Files
sso-bsn/lib/sso_bsn/accounts/user_key.ex
bluepython508 092930a24f WebAuthN auth
2023-11-05 01:12:02 +00:00

31 lines
622 B
Elixir

defmodule SsoBsn.Accounts.UserKey do
use Ecto.Schema
import Ecto.Changeset
alias SsoBsn.Accounts.User
defmodule BinaryTerm do
use Ecto.Type
def type, do: :binary
def cast(term), do: {:ok, term}
def load(data) when is_binary(data), do: {:ok, :erlang.binary_to_term(data)}
def dump(term), do: {:ok, :erlang.term_to_binary(term)} |> dbg()
end
alias SsoBsn.Accounts.UserKey.BinaryTerm
schema "users_keys" do
field :key_id, :string
field :cose_key, BinaryTerm
belongs_to :user, User
end
def new(key, attrs) do
key
|> cast(attrs, [:key_id, :cose_key])
end
end