Raxol.Security.SessionManager (Raxol v2.0.1)

View Source

Secure session management with built-in security features.

Features:

  • Cryptographically secure session tokens
  • Session expiration and renewal
  • Concurrent session limiting
  • Session fixation protection
  • Secure session storage

Summary

Functions

Returns a specification to start this module under a supervisor.

Creates a new secure session.

Generates a secure CSRF token for a session.

Gets active sessions for a user.

Invalidates a session.

Invalidates all sessions for a user.

Regenerates session ID to prevent fixation attacks.

Refreshes session activity timestamp.

Validates a CSRF token.

Validates a session token and returns session info.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

create_session(user_id, opts \\ [])

Creates a new secure session.

Options

  • :ip_address - Client IP address
  • :user_agent - Client user agent
  • :metadata - Additional session metadata

generate_csrf_token(session_id)

Generates a secure CSRF token for a session.

get_user_sessions(user_id)

Gets active sessions for a user.

handle_manager_call(request, from, state)

Callback implementation for Raxol.Core.Behaviours.BaseManager.handle_manager_call/3.

handle_manager_cast(msg, state)

Callback implementation for Raxol.Core.Behaviours.BaseManager.handle_manager_cast/2.

handle_manager_info(msg, state)

Callback implementation for Raxol.Core.Behaviours.BaseManager.handle_manager_info/2.

invalidate_session(session_id)

Invalidates a session.

invalidate_user_sessions(user_id)

Invalidates all sessions for a user.

regenerate_session_id(old_session_id)

Regenerates session ID to prevent fixation attacks.

start_link(init_opts \\ [])

touch_session(session_id)

Refreshes session activity timestamp.

validate_csrf_token(session_id, token)

Validates a CSRF token.

validate_session(session_id, token)

Validates a session token and returns session info.