Pow v1.0.21 Pow.Plug View Source
Plug helper methods.
Link to this section Summary
Functions
Assign an authenticated user to the connection.
Authenticates a user.
Creates a changeset from the current authenticated user.
Call create/3
for the Pow plug set for the conn
.
Creates a new user.
Get the current user assigned to the conn.
Get the current user assigned to the conn.
Call delete/2
for the Pow plug set for the conn
.
Deletes the current authenticated user.
Fetch configuration from the private key in the connection.
Prepend namespace found in Plug Pow configuration to binary.
Put the provided config as a private key in the connection.
Signs a token for public consumption.
Updates the current authenticated user.
Decodes and verifies a token.
Link to this section Functions
assign_current_user(conn, user, config)
View Sourceassign_current_user(Plug.Conn.t(), any(), Pow.Config.t()) :: Plug.Conn.t()
Assign an authenticated user to the connection.
This will assign the user to the conn. The key is by default :current_user
,
but it can be overridden with :current_user_assigns_key
configuration
option.
authenticate_user(conn, params)
View Sourceauthenticate_user(Plug.Conn.t(), map()) :: {:ok | :error, Plug.Conn.t()}
Authenticates a user.
If successful, a new session will be created.
change_user(conn, params \\ %{})
View Sourcechange_user(Plug.Conn.t(), map()) :: map()
Creates a changeset from the current authenticated user.
Call create/3
for the Pow plug set for the conn
.
create(conn, user, config)
View Sourcecreate(Plug.Conn.t(), map(), Pow.Config.t()) :: Plug.Conn.t()
create_user(conn, params)
View Sourcecreate_user(Plug.Conn.t(), map()) :: {:ok, map(), Plug.Conn.t()} | {:error, map(), Plug.Conn.t()}
Creates a new user.
If successful, a new session will be created.
Get the current user assigned to the conn.
The config is fetched from the conn. See current_user/2
for more.
current_user(map, config)
View Sourcecurrent_user(Plug.Conn.t(), Pow.Config.t()) :: map() | nil
Get the current user assigned to the conn.
This will fetch the user from the assigns map in the conn. The key is by
default :current_user
, but it can be overridden with
:current_user_assigns_key
configuration option.
Call delete/2
for the Pow plug set for the conn
.
delete(conn, config)
View Sourcedelete(Plug.Conn.t(), Pow.Config.t()) :: Plug.Conn.t()
delete_user(conn)
View Sourcedelete_user(Plug.Conn.t()) :: {:ok, map(), Plug.Conn.t()} | {:error, map(), Plug.Conn.t()}
Deletes the current authenticated user.
If successful, the user authentication will be cleared from the session.
Fetch configuration from the private key in the connection.
It'll raise an error if configuration hasn't been set as a private key.
prepend_with_namespace(config, string)
View Sourceprepend_with_namespace(Pow.Config.t(), binary()) :: binary()
Prepend namespace found in Plug Pow configuration to binary.
Will prepend :otp_app
if exists in configuration.
put_config(conn, config)
View Sourceput_config(Plug.Conn.t(), Pow.Config.t()) :: Plug.Conn.t()
Put the provided config as a private key in the connection.
sign_token(conn, salt, token, config \\ nil)
View Sourcesign_token(Plug.Conn.t(), binary(), binary(), Pow.Config.t() | nil) :: binary()
Signs a token for public consumption.
Used to prevent timing attacks with token lookup.
This uses Pow.Plug.MessageVerifier
by default, but can be changed if the
Pow configuration is set with :message_verifier
. Pow.Plug.MessageVerifier
can also be configured in this way if :message_verifier
is set to
{Pow.Plug.MessageVerifier, key_generator_opts: [length: 64]}
update_user(conn, params)
View Sourceupdate_user(Plug.Conn.t(), map()) :: {:ok, map(), Plug.Conn.t()} | {:error, map(), Plug.Conn.t()}
Updates the current authenticated user.
If successful, a new session will be created.
verify_token(conn, salt, token, config \\ nil)
View Sourceverify_token(Plug.Conn.t(), binary(), binary(), Pow.Config.t() | nil) :: {:ok, binary()} | :error
Decodes and verifies a token.
Used to prevent timing attacks with token lookup.
This uses Pow.Plug.MessageVerifier
by default, but can be changed if the
Pow configuration is set with :message_verifier
. Pow.Plug.MessageVerifier
can also be configured in this way if :message_verifier
is set to
{Pow.Plug.MessageVerifier, key_generator_opts: [length: 64]}