Packages
Provides a full user authentication experience for an API. Includes login,logout,register,forgot password, forgot username, confirmation email and all that other good stuff. Includes plug for checking for authenticated users and macro for generating the required routes.
Current section
Files
Jump to
Current section
Files
lib/access_token.ex
defmodule AccessPass.AccessToken do
@moduledoc """
AccessToken communicated internally with a GenServer implementation of your
applications valid access tokens.
"""
@server_name :access_token
@doc """
will add a new access_token with meta based on refresh_token
Returns `"access_token"`.
## Examples
AccessPass.AccessToken.add("ODhhMDgzYwfefdfeC00YjgyLWFiZGMtZTJjOWZiMzJjODhi",${})
"ODhhMDgzYwfefdfeC00YjgyLWFiZGMtZTJjOWZiMzJjODhi"
"""
def add(refresh_token, meta) do
GenServer.call(@server_name, {:add, refresh_token, meta})
end
@doc """
calling will revoke a given access token
Returns `{:ok}`.
## Examples
AccessPass.AccessToken.revoke("ODhhMDgzYwfefdfeC00YjgyLWFiZGMtZTJjOWZiMzJjODhi")
{:ok}
"""
def revoke(access_token) do
GenServer.call(@server_name, {:revoke, access_token})
end
@doc """
calling will check if an access token is still valid
Returns `{:ok, val}`.
## Examples
AccessPass.AccessToken.check("ODhhMDgzYwfefdfeC00YjgyLWFiZGMtZTJjOWZiMzJjODhi")
{ok: {metadata: "hi"}}
"""
def check(access_token) do
AccessPass.AccessTokenServer.check(access_token)
end
def revoke_self_only(refresh_token) do
GenServer.cast(@server_name, {:revoke, refresh_token})
end
end