Basic Configuration

Configure Session to match your application's requirements.

Minimal Configuration

Session.configure do |config|
  config.secret = ENV["SESSION_SECRET"]
  config.provider = Session::MemoryStore(UserSession).provider
end

Full Configuration

Session.configure do |config|
  # Core settings
  config.secret = ENV["SESSION_SECRET"]      # Required: encryption key
  config.timeout = 1.hour                     # Session lifetime
  config.session_key = "_session"             # Cookie name

  # Storage provider
  config.provider = Session::RedisStore(UserSession).provider(
    client: Redis.new
  )
end

Configuration Properties

Property
Type
Default
Description

secret

String

(default)

Encryption secret (32+ chars recommended)

timeout

Time::Span

1.hour

Session lifetime

session_key

String

"_session"

Cookie name

provider

Provider

nil

Storage backend

Environment-Based Configuration

Accessing Configuration

Last updated

Was this helpful?