<abbrtitle="LemonLDAP::NG">LL::NG</abbr> portal provides REST end points for sessions management:
</p>
<ul>
<liclass="level1"><divclass="li"> GET /sessions/<type>/<session-id> : get session datas</div>
</li>
<liclass="level1"><divclass="li"> GET /sessions/<type>/<session-id>/<key> : get a session key value</div>
</li>
<liclass="level1"><divclass="li"> GET /sessions/<type>/<session-id>/[k1,k2] : get some session key value</div>
</li>
<liclass="level1"><divclass="li"> POST /sessions/<type> : create a session</div>
</li>
<liclass="level1"><divclass="li"> PUT /sessions/<type>/<session-id> : update some keys</div>
</li>
<liclass="level1"><divclass="li"> DELETE /sessions/<type>/<session-id> : delete a session</div>
</li>
</ul>
<p>
Sessions for connected users:
</p>
<ul>
<liclass="level1"><divclass="li"> GET /mysession/<type> : get session datas</div>
</li>
<liclass="level1"><divclass="li"> GET /mysession/<type>/key : get session key</div>
</li>
<liclass="level1"><divclass="li"> DELETE /mysession : ask for logout</div>
</li>
</ul>
<p>
Authorizations for connected users (always enabled):
</p>
<ul>
<liclass="level1"><divclass="li"> GET /mysession/?authorizationfor=<base64-encoded-url>: ask if url is authorizated</div>
</li>
</ul>
<p>
This session backend can be used to share sessions stored in a non-network backend (like <ahref="filesessionbackend.html"class="wikilink1"title="documentation:2.0:filesessionbackend">file session backend</a>) or in a network backend protected with a firewall that only accepts HTTP flows.
</p>
<p>
Most of the time, REST session backend is used by Handlers installed on external servers.
</p>
<p>
To configure it, REST session backend will be set trough Manager in global configuration (used by all Handlers), and the real session backend will be configured for local components in lemonldap-ng.ini.
<h2class="sectionedit2"id="setup">Mise en marche</h2>
<divclass="level2">
</div><!-- EDIT2 SECTION "Setup" [1391-1409] -->
<h3class="sectionedit3"id="manager">Manager</h3>
<divclass="level3">
<p>
First, active SOAP in <code>General parameters</code> » <code>Advanced parameters</code> » <code>Portal servers</code> » <code>SOAP session server</code>.
</p>
<p>
Then, set <code>Lemonldap::NG::Common::Apache::Session::REST</code> in <code>General parameters</code> » <code>Sessions</code> » <code>Session storage</code> » <code>Apache::Session module</code> and add the following parameters (case sensitive):
<thclass="col0 centeralign"> Nom </th><thclass="col1 centeralign"> Commentaire </th><thclass="col2 centeralign"> Exemple </th>
</tr>
</thead>
<trclass="row2 roweven">
<tdclass="col0 centeralign"><strong>baseUrl</strong></td><tdclass="col1"><abbrtitle="Uniform Resource Locator">URL</abbr> of sessions REST end point </td><tdclass="col2"> http://auth.example.com/sessions/global </td>
<tdclass="col0 centeralign"><strong>user</strong></td><tdclass="col1"> Username to use for auth basic mechanism </td><tdclass="col2 leftalign"></td>
</tr>
<trclass="row5 rowodd">
<tdclass="col0 centeralign"><strong>password</strong></td><tdclass="col1"> Password to use for auth basic mechanism </td><tdclass="col2 leftalign"></td>
Sessions REST end points access must be allowed in Apache portal configuration (for example, access by <abbrtitle="Internet Protocol">IP</abbr> range):
</p>
<preclass="code file apache"><spanclass="co1"># SOAP functions for sessions management (disabled by default)</span>
<h3class="sectionedit6"id="real_session_backend">Backend de session réel</h3>
<divclass="level3">
<p>
Real session backend will be configured in <code>lemonldap-ng.ini</code>, in <code>portal</code> section (the portal hosts the REST service for sessions, and will do the link between SOAP requests and real sessions).
</p>
<p>
Par exemple, si les sessions réelels sont stockées dans des <ahref="filesessionbackend.html"class="wikilink1"title="documentation:2.0:filesessionbackend">fichiers</a> :
<divclass="notetip">Session explorer and “single session” features can't be used using this backend. Session explorer and portal must be launched with real backend.