Sessions in
PostGreSQL
PostGreSQL
configuration
We suppose that LemonLDAP::Ng used a local
database.
Database
creation
For example, with Debian:
# su - potsgres
$ createuser lemonldap-ng -P
Entrez le mot de passe pour le nouveau rôle : <PASSWORD>
Entrez-le de nouveau : <PASSWORD>
Le nouveau rôle est-il un super-utilisateur ? (o/n) n
Le nouveau rôle doit-il être autorisé à créer des bases de données ? (o/n) n
Le nouveau rôle doit-il être autorisé à créer de nouveaux rôles ? (o/n) n
CREATE ROLE
$ createdb -O lemonldap-ng lemonldap-ng
CREATE DATABASE
Table
creation
Create the table:
$ psql -h 127.0.0.1 -U lemonldap-ng -W lemonldap-ng
Mot de passe pour l'utilisateur lemonldap-ng :
[...]
lemonldap-ng=> create table sessions ( id char(32) not null primary key, a_session text );
NOTICE: CREATE TABLE / PRIMARY KEY créera un index implicite « sessions_pkey » pour la table « sessions »
CREATE TABLE
lemonldap-ng=> q
LemonLDAP::NG configuration
Go to the Manager and go in
General Parameters > Session Storage. Then change
Apache::Session module to
"Apache::Session::Postgres" and in
Apache::Session
parameters configure the following options:
- DataSource (for example:
dbi:Pg:dbname=lemonldap-ng;host=127.0.0.1)
- UserName
- Password
- Commit
You can also set the session module in perl scripts:
globalStorage => "Apache::Session::Postgres",
globalStorageOptions => {
DataSource => "dbi:Pg:database=lemonldap-ng;host=127.0.0.1",
UserName => "lemonldap-ng",
Password => "<PASSWORD>",
Commit => 1,
},