Browseable session backend (Apache::Session::Browseable) works exactly like Apache::Session::* corresponding module but add indexes that increase session explorer and session restrictions performances.
If you use features like SAML (authentication and issuer), CAS (issuer) and password reset self-service, you also need to index some fields.
The following table list fields to index depending on the feature you want to use:
Feature | Fields to index |
---|---|
Session explorer | ipAddr WHATTOTRACE |
Session restrictions | ipAddr WHATTOTRACE |
SAML authentication and issuer | _saml_id ProxyID _nameID _assert_id _art_id _session_id |
CAS issuer | _cas_id |
Password reset | user |
Using Redis, you just have to prepare Redis database. See Redis session backend.
Exemple with MySQL:
Database must be prepared exactly like in SQL session backend except that a field must be added for each data to index.
CREATE TABLE sessions ( id char(32) NOT NULL PRIMARY KEY, a_session blob, _whatToTrace varchar(255), ipAddr varchar(15), KEY _whatToTrace (_whatToTrace), KEY ipAddr (ipAddr) );
Using Redis, you just have to add the “Index” parameter in General parameters
» Sessions
» Session storage
» Apache::Session module
:
Required parameters | ||
---|---|---|
Name | Comment | Example |
server | Redis server | 127.0.0.1:6379 |
Index | Index | _whatToTrace ipAddr |
Example with MySQL:
Go in the Manager and set the session module (Apache::Session::Browseable::MySQL for MySQL) in General parameters
» Sessions
» Session storage
» Apache::Session module
and add the following parameters (case sensitive):
Required parameters | ||
---|---|---|
Name | Comment | Example |
DataSource | The DBI string | dbi:mysql:dbname=sessions |
UserName | The database username | lemonldapng |
Password | The database password | mysuperpassword |
Index | Index | _whatToTrace ipAddr |
For databases like PostgreSQL, don't forget to add “Commit” with a value of 1
Restrict network access to the database.
You can also use different user/password for your servers by overriding parameters globalStorage
and globalStorageOptions
in lemonldap-ng.ini file.