SQL session backend can be used with many SQL databases such as:
Il faut dédier une table pour héberger les sessions. Quelques exemples pour les serveurs principaux.
Créer une base de données si nécessaire :
mysqladmin create lemonldapng
Créer la table des sessions :
CREATE TABLE sessions ( id CHAR(32) NOT NULL PRIMARY KEY, a_session text );
sessions
to whatever you want, just adapt the parameter TableName
in module options.
Créer un utilisateur et un rôle :
su - postgres 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
Créer la base de données :
createdb -O lemonldap-ng lemonldap-ng
Créer la 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 ); lemonldap-ng=> q
Aller dans le Manager et choisir le module de session (par exemple Apache::Session::Browseable::Postgres pour PostgreSQL) dans Paramètres généraux
» Sessions
» Stockage des sessions
» Module Apache::Session
et ajouter les paramètres suivants (sensible à la casse):
Paramètres exigés | ||
---|---|---|
Nom | Commentaire | Exemple |
DataSource | La chaîne DBI | dbi:Pg:dbname=sessions;host=10.2.3.1 |
UserName | Le login de la base de données | lemonldapng |
Mot-de-passe | Le mot de passe de la base de données | mysuperpassword |
Commit | Requis pour PostgreSQL | 1 |
TableName | Name of the table | sessions |
Il faut consulter la page de manuel correspondant à la base de données (Apache::Session::MySQL, …) pour connaître les paramètres. Il faut également installer le connecteur à la base de données (DBD::Oracle, DBD::Pg,…)
Si MySQL est choisi, lire comment augmenter les performances de MySQL.
Restreindre l'accès réseau à la base de données.
On peut utiliser différent login/mot-de-passe pour les serveurs en surchargeant les paramètres globalStorage
et globalStorageOptions
dans le fichier lemonldap-ng.ini.