Skip to content

bryanenders/passwordless

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Passwordless

Passwordless is an Elixir library for generating and redeeming one-time tokens.

These tokens can be used as a layer in a Multi-Factor Authentication (MFA) scenario or in place of user passwords in a Single-Factor Authentication (SFA) scenario. See: 360 million reasons to destroy all passwords.

Installation

  1. Add passwordless to your list of dependencies in mix.exs:
```elixir
defp deps, do: [{:passwordless, "~> 0.1.0"}]
```
  1. Ensure passwordless is started before your application:
```elixir
def application, do: [applications: [:passwordless]]
```

Usage

defp send_token(user) do
  user.id
  |> Passwordless.generate_login_token()
  |> email_login_link(user)
end
defp create_session(token) do
  case Passwordless.redeem(token) do
    {:ok, user_id} -> MyApp.log_in(user_id)
    :error -> MyApp.handle_expired_token(token)
  end
end

About

Passwordless authentication

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages