Raxol.Core.Session.SecuritySession (Raxol v2.0.1)

View Source

Security session implementation for the unified session manager.

Provides cryptographically secure session management with:

  • Secure token generation and validation
  • Session expiration and renewal
  • Concurrent session limiting
  • Session fixation protection
  • CSRF token generation

Summary

Functions

Cleans up expired security sessions.

Counts total security sessions.

Creates a new security session.

Generates a CSRF token for a session.

Gets statistics about security sessions.

Gets all sessions for a user.

Invalidates all sessions for a user.

Validates a session token and returns session info.

Validates a CSRF token.

Types

t()

@type t() :: %Raxol.Core.Session.SecuritySession{
  created_at: DateTime.t(),
  expires_at: DateTime.t(),
  id: String.t(),
  ip_address: String.t() | nil,
  last_activity: DateTime.t(),
  metadata: map(),
  token: binary(),
  user_agent: String.t() | nil,
  user_id: String.t()
}

Functions

cleanup_expired(sessions_state, config)

Cleans up expired security sessions.

count(sessions_state)

Counts total security sessions.

create(user_id, opts, config, sessions_state)

Creates a new security session.

generate_csrf_token(session_id)

Generates a CSRF token for a session.

get_stats(sessions_state)

Gets statistics about security sessions.

get_user_sessions(user_id, sessions_state)

Gets all sessions for a user.

invalidate(session_id, sessions_state)

Invalidates a session.

invalidate_user_sessions(user_id, sessions_state)

Invalidates all sessions for a user.

validate(session_id, token, sessions_state)

Validates a session token and returns session info.

validate_csrf_token(session_id, token)

Validates a CSRF token.