AuthN v0.21.0 AuthN.SessionStorage behaviour View Source

Module used for storing, retrieving and deleting the user token into/from the session.

This module serves as an interface, delegating calls to another module implementing the session's storage logic. The default implementation module is AuthN.SessionStorage.StatelessCookie, which stores sessions into stateless cookies. Another module implementing sessions storage can be specified by adding the module name into the :session_storage key of conn.private.

Link to this section Summary

Link to this section Types

Specs

conn() :: %Plug.Conn{
  adapter: term(),
  assigns: term(),
  before_send: term(),
  body_params: term(),
  cookies: term(),
  halted: term(),
  host: term(),
  method: term(),
  owner: term(),
  params: term(),
  path_info: term(),
  path_params: term(),
  port: term(),
  private: term(),
  query_params: term(),
  query_string: term(),
  remote_ip: term(),
  req_cookies: term(),
  req_headers: term(),
  request_path: term(),
  resp_body: term(),
  resp_cookies: term(),
  resp_headers: term(),
  scheme: term(),
  script_name: term(),
  secret_key_base: term(),
  state: term(),
  status: term()
}

Link to this section Functions

Link to this function

delete_user_token(conn, delete_session_token_fun \\ &(&1))

View Source

Specs

delete_user_token(conn(), function()) :: conn()

Specs

get_user_token(conn()) :: term() | nil
Link to this function

put_user_token(conn, user_token)

View Source

Specs

put_user_token(conn(), term()) :: conn()

Link to this section Callbacks

Link to this callback

delete_user_token(conn, function)

View Source

Specs

delete_user_token(conn(), function()) :: conn()

Specs

get_user_token(conn()) :: {term(), conn()}
Link to this callback

put_user_token(conn, user)

View Source

Specs

put_user_token(conn(), user :: term()) :: conn()