<divclass="notewarning">Ce module fournit un protocole de fédération d'identité spécifique à <abbrtitle="LemonLDAP::NG">LL::NG</abbr>. Il est préférable d'utiliser des protocoles standards tels <ahref="idpsaml.html"class="wikilink1"title="documentation:2.0:idpsaml">SAML</a>, <ahref="idpopenidconnect.html"class="wikilink1"title="documentation:2.0:idpopenidconnect">OpenID</a> ou <ahref="idpcas.html"class="wikilink1"title="documentation:2.0:idpcas">CAS</a>.
<liclass="level1"><divclass="li"> Le portail principal est configuré pour utiliser le <abbrtitle="Authentification inter-domaines">CDA</abbr>. Le portail secondaire est declaré dans le Manager du système <abbrtitle="LemonLDAP::NG">LL::NG</abbr> principal comme une application (sinon les utilisateurs seront rejetés).</div>
</li>
<liclass="level1"><divclass="li"> Le portail du système <abbrtitle="LemonLDAP::NG">LL::NG</abbr> secondaire est configuré pour déléguer l'authentification à un portail distant. Une requête à la base de données des sessions principale est effectuée (via le <ahref="soapsessionbackend.html"class="wikilink1"title="documentation:2.0:soapsessionbackend">backend de session SOAP</a>) pour être sûr que la session existe.</div>
</li>
<liclass="level1"><divclass="li"> Si <code>exportedAttr</code> est défini, seuls ces attributs sont copiés dans la base des sessions du système <abbrtitle="LemonLDAP::NG">LL::NG</abbr> secondaire. Sinon, toutes les données sont copiées.</div>
<liclass="level1"><divclass="li"> Un utilisateur essaie d'accéder à une application du système <abbrtitle="LemonLDAP::NG">LL::NG</abbr> secondaire sans avoir de session dans cette aire</div>
</li>
<liclass="level1"><divclass="li"> Redirection vers le portail secondaire (transparent)</div>
</li>
<liclass="level1"><divclass="li"> Redirection vers le portail principal et authentification normale (sauf si déjà faite)</div>
</li>
<liclass="level1"><divclass="li"> Redirection vers le portail secondaire (transparent)</div>
</li>
<liclass="level1"><divclass="li"> Le portail secondaire vérifie que la session distante est valable. Ce peut être fait par accès direct à la base des sessions principale ou en utilisant une requête SOAP. Il crée la sessions (avec le filtre d'attributs)</div>
</li>
<liclass="level1"><divclass="li"> L'utilisateur peut maintenant accéder aux applications</div>
</li>
</ol>
<divclass="noteclassic">Noter que si l'utilisateur est déjà authentifié sur le premier portail, toutes les redirections sont transparentes.
Configurer le portail pour qu'il utilise le système <abbrtitle="LemonLDAP::NG">LL::NG</abbr> distant.
</p>
<p>
Dans le manager, aller dans <code>Paramètres généraux</code>><code>Modules d'authentification</code> et choisir Remote pour les modules authentification et utilisateurs.
</p>
<p>
Ensuite, aller dans les <code>paramètres Remote</code> :
</p>
<ul>
<liclass="level1"><divclass="li"><strong>Portail <abbrtitle="Uniform Resource Locator">URL</abbr></strong>: <abbrtitle="Uniform Resource Locator">URL</abbr> du portail distant</div>
</li>
<liclass="level1"><divclass="li"><strong>Nom du cookie</strong> (optionnel) : nom du cookie du portail primaire, s'il est différent de celui du portail secondaire</div>
</li>
<liclass="level1"><divclass="li"><strong>Module de sessions</strong> : mettre <code>Lemonldap::NG::Common::Apache::Session::SOAP</code> pour le <ahref="soapsessionbackend.html"class="wikilink1"title="documentation:2.0:soapsessionbackend">backend de session SOAP</a>.</div>
</li>
<liclass="level1"><divclass="li"><strong>Options du module de sessions</strong> :</div>
<ul>
<liclass="level2"><divclass="li"><strong>proxy</strong>: point d'accès SOAP (voir la documentation du <ahref="soapsessionbackend.html"class="wikilink1"title="documentation:2.0:soapsessionbackend">backend de session SOAP</a>)</div>
<h3class="sectionedit7"id="exampleinteroperability_between_2_organizations">Exemple : interoperabilité entre 2 organisations</h3>
<divclass="level3">
<p>
En utilisant ce système, on peut avoir une simple interopérabilité entre 2 organisations utilisant chacune leur système <abbrtitle="LemonLDAP::NG">LL::NG</abbr> :
</p>
<ul>
<liclass="level1"><divclass="li"> chacune a 2 portails:</div>
<ul>
<liclass="level2"><divclass="li"> Un portail standard</div>
<liclass="level2"><divclass="li"> One remote portal that delegates authentication to the second organization (just another file on the same server)</div>
<liclass="level1"><divclass="li"> Le portail normal dispose d'un lien dans le formulaire d'authentification pointant vers le portail destiné aux utilisateurs de l'autre organisation</div>
</li>
</ul>
<p>
Ainsi sur chacun des portails principaux, les utilisateurs internes peuvent accéder normalement et les utilisateurs de l'autre organisation n'ont qu'à cliquer sur le lien :