16 lines
390 B
Elixir
16 lines
390 B
Elixir
defmodule Server.Auth do
|
|
@moduledoc "Single-user dashboard authentication."
|
|
|
|
@spec verify_password(term()) :: :ok | :error
|
|
def verify_password(password) when is_binary(password) do
|
|
hash = Application.fetch_env!(:server, :dashboard_password_hash)
|
|
|
|
if Argon2.verify_pass(password, hash) do
|
|
:ok
|
|
else
|
|
:error
|
|
end
|
|
end
|
|
|
|
def verify_password(_), do: :error
|
|
end
|