How to change session backend¶
LemonLDAP::NG provides a script to change session backend. This script
will help you transfer existing persistent sessions (or offline
sessions) when migrating from one backend to another, or when adding
indexes to a
browseable session backend. It is
available in LemonLDAP::NG utilities directory (convertSessions
).
How it works¶
The convertSessions
utility requires you to create a job
configuration file with the following content:
# This example migrates psessions from the default File backend to a PostgreSQL database
[sessions_from]
storageModule = Apache::Session::File
storageModuleOptions = { \
'Directory' => '/var/lib/lemonldap-ng/psessions', \
'LockDirectory' => '/var/lib/lemonldap-ng/psessions/lock', \
}
# Only convert some session types
# sessionKind = Persistent, SSO
[sessions_to]
storageModule = Apache::Session::Browseable::Postgres
storageModuleOptions = { \
'DataSource' => 'DBI:Pg:database=lemonldapdb;host=pg.example.com', \
'UserName' => 'lemonldaplogin', \
'Password' => 'lemonldappw', \
'Commit' => 1, \
'Index' => 'ipAddr _whatToTrace user', \
'TableName' => 'psessions', \
}
Invocation¶
convertSessions -c job.ini
Options:
-c
: job configuration file (mandatory)-r oldkey=newkey
: rename session keys during conversion (optional, can be given multiple times)-x key
: remove session keys during conversion (optional, can be given multiple times)-i
: ignore errors. By default errors will stop the script execution-d
: print debugging output