This extension will permit reissuing sessions, by setting a cookie with a 30-day expiration (renewed on every request). The token in this cookie can be used exactly once to create the session. When the session has been created, the cookie will be updated with a new id.
Follow the instructions for extensions in README.md, and set PowPersistentSession
in the :extensions
list.
Add the following plug after the pow session plug in your endpoint.ex
:
defmodule MyAppWeb.Endpoint do
# ...
plug Pow.Plug.Session, otp_app: :my_app
plug PowPersistentSession.Plug.Cookie
#...
end
By default, the persistent session is automatically used if the extension has been enabled. If you wish to let the user manage this, you should add the following checkbox to the form in WEB_PATH/templates/pow/session/new.html.eex
(you may need to generate the templates first):
<%= label f, :persistent_session, "Remember me" %>
<%= checkbox f, :persistent_session %>