2008-02-25 12:32:36 +01:00
|
|
|
<?xml version="1.0" encoding="utf-8"?>
|
|
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
|
|
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
|
|
|
|
<head>
|
|
|
|
<meta name="generator" content=
|
2009-02-17 18:05:02 +01:00
|
|
|
"HTML Tidy for Linux/x86 (vers 7 December 2008), see www.w3.org" />
|
2008-02-25 12:32:36 +01:00
|
|
|
|
2008-12-13 10:52:53 +01:00
|
|
|
<title>Lemonldap::NG documentation:
|
|
|
|
4.3-Configure-Liberty-Alliance-fr.html</title>
|
2008-02-25 12:32:36 +01:00
|
|
|
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii" />
|
2008-08-30 09:59:02 +02:00
|
|
|
<style type="text/css">
|
|
|
|
/*<![CDATA[*/
|
|
|
|
body{
|
|
|
|
background: #ddd;
|
|
|
|
font-family: sans-serif;
|
|
|
|
font-size: 11pt;
|
|
|
|
padding: 0 50px;
|
|
|
|
}
|
|
|
|
div.main-content{
|
|
|
|
padding: 10px;
|
|
|
|
background: #fff;
|
|
|
|
border: 2px #ccc solid;
|
|
|
|
}
|
|
|
|
a{
|
|
|
|
text-decoration: none;
|
|
|
|
}
|
|
|
|
p.footer{
|
|
|
|
text-align: center;
|
|
|
|
margin: 5px 0 0 0;
|
|
|
|
}
|
|
|
|
.heading-1{
|
|
|
|
text-align: center;
|
|
|
|
color: orange;
|
|
|
|
font-variant: small-caps;
|
|
|
|
font-size: 20pt;
|
|
|
|
}
|
|
|
|
.heading-1-1{
|
|
|
|
color: orange;
|
|
|
|
font-size: 14pt;
|
|
|
|
border-bottom: 2px #ccc solid;
|
|
|
|
}
|
|
|
|
pre{
|
|
|
|
background: #eee;
|
|
|
|
border: 2px #ccc solid;
|
|
|
|
padding: 5px;
|
|
|
|
border-left: 10px #ccc solid;
|
|
|
|
}
|
|
|
|
ul.star li{
|
|
|
|
list-style-type: square;
|
|
|
|
}
|
|
|
|
/*]]>*/
|
|
|
|
</style>
|
2008-02-25 12:32:36 +01:00
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
<div class="main-content">
|
|
|
|
<h2 class="heading-1"><span id="HUtilisationdeLibertyAlliance">Utilisation
|
|
|
|
de Liberty Alliance</span></h2>
|
|
|
|
|
|
|
|
<p class="paragraph"></p>
|
|
|
|
|
|
|
|
<ul>
|
2008-05-10 21:36:24 +02:00
|
|
|
<li>
|
|
|
|
<a href="#HPrC3A9requis">Pré-requis</a>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li><a href="#HVersiondeLemonLDAP3A3ANG">Version de
|
|
|
|
LemonLDAP::NG</a></li>
|
|
|
|
|
|
|
|
<li><a href="#HLasso">Lasso</a></li>
|
|
|
|
</ul>
|
|
|
|
</li>
|
2008-02-25 12:32:36 +01:00
|
|
|
|
|
|
|
<li>
|
|
|
|
<a href="#HPrC3A9sentation">Présentation</a>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li><a href="#HLibertyAlliance">Liberty Alliance</a></li>
|
|
|
|
|
|
|
|
<li><a href="#HLeprojetFederID">Le projet FederID</a></li>
|
|
|
|
|
|
|
|
<li><a href=
|
|
|
|
"#HFonctionnementdeLemonLDAP3A3ANGavecLibertyAlliance">Fonctionnement
|
|
|
|
de LemonLDAP::NG avec Liberty Alliance</a></li>
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li>
|
|
|
|
<a href="#HInstallationetparamC3A9trage">Installation et
|
|
|
|
paramétrage</a>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li><a href="#HConsidC3A9rations">Considérations</a></li>
|
|
|
|
|
|
|
|
<li><a href="#HFournisseurd27identitC3A9">Fournisseur
|
|
|
|
d'identité</a></li>
|
|
|
|
|
|
|
|
<li><a href="#HComposantsLemonLDAP3A3ANG">Composants
|
|
|
|
LemonLDAP::NG</a></li>
|
|
|
|
|
|
|
|
<li>
|
|
|
|
<a href="#HPortailLibertyAlliance">Portail Liberty Alliance</a>
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
<li><a href=
|
|
|
|
"#HInstallationdesfichiersspC3A9cifiques">Installation des
|
|
|
|
fichiers spécifiques</a></li>
|
|
|
|
|
|
|
|
<li><a href="#HCrC3A9ationdesmetadataduSP">Création des
|
|
|
|
metadata du SP</a></li>
|
|
|
|
|
|
|
|
<li><a href=
|
|
|
|
"#HEnregistrementdeLemonLDAP3A3ANGsurlefournisseurd27identitC3A9s">
|
|
|
|
Enregistrement de LemonLDAP::NG sur le fournisseur
|
|
|
|
d'identités</a></li>
|
|
|
|
|
|
|
|
<li><a href=
|
|
|
|
"#HEnregistrementdufournisseurd27identitC3A9ssurLemonLDAP3A3ANG">
|
|
|
|
Enregistrement du fournisseur d'identités sur
|
|
|
|
LemonLDAP::NG</a></li>
|
|
|
|
|
|
|
|
<li><a href="#HParamC3A9trageduportail">Paramétrage du
|
|
|
|
portail</a></li>
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
<li><a href="#HDC3A9monstration">Démonstration</a></li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h3 class="heading-1-1"><span id=
|
2008-05-10 21:36:24 +02:00
|
|
|
"HPrC3A9requis">Pré-requis</span></h3>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id="HVersiondeLemonLDAP3A3ANG">Version de
|
|
|
|
LemonLDAP::NG</span></h4>
|
|
|
|
|
|
|
|
<p class="paragraph"></p>Le support Liberty Alliance est inclus à
|
|
|
|
LemonLDAP::NG depuis la version 0.9.
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id="HLasso">Lasso</span></h4><br />
|
2008-02-25 12:32:36 +01:00
|
|
|
<br />
|
|
|
|
Pour fonctionner, il faut que le binding Perl de la bibliothèque
|
|
|
|
lasso soit installé sur le serveur.<br />
|
|
|
|
<br />
|
|
|
|
Le téléchargement peut se faire sur la page du projet
|
|
|
|
(<span class="nobr"><a href=
|
|
|
|
"http://lasso.entrouvert.org/download/">http://lasso.entrouvert.org/download/</a></span>).<br />
|
|
|
|
|
|
|
|
<br />
|
|
|
|
Sous Debian, si les dépôts sont activés,
|
|
|
|
l'installation se fait par la commande suivante :<br />
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
# apt-get install liblasso-perl
|
|
|
|
</pre>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<h3 class="heading-1-1"><span id=
|
|
|
|
"HPrC3A9sentation">Présentation</span></h3>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id="HLibertyAlliance">Liberty
|
|
|
|
Alliance</span></h4><br />
|
|
|
|
<br />
|
2008-07-04 12:11:40 +02:00
|
|
|
<img src="liberty_alliance_logo_jpeg.jpg" alt=
|
|
|
|
"liberty_alliance_logo_jpeg.jpg" /><br />
|
2008-02-25 12:32:36 +01:00
|
|
|
<br />
|
|
|
|
Cette norme permet de fédérer des identités issues de
|
|
|
|
référentiels différents (par exemple un annuaire, une
|
|
|
|
base de données, etc.). Ces données ne sont pas
|
|
|
|
synchronisées mais l'utilisateur qui accède à des
|
|
|
|
services utilisant ces identités (un site d'achat en ligne par
|
|
|
|
exemple) pourra fédérer son identité principale avec
|
|
|
|
l'identité utilisée par ce service. Ainsi il pourra
|
|
|
|
accéder de manière transparente à plusieurs
|
|
|
|
applications utilisant plusieurs identités, sans avoir à se
|
|
|
|
réauthentifier.<br />
|
|
|
|
<br />
|
|
|
|
Voir aussi :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li><span class="nobr"><a href=
|
|
|
|
"http://fr.wikipedia.org/wiki/Liberty_Alliance">http://fr.wikipedia.org/wiki/Liberty_Alliance</a></span></li>
|
|
|
|
|
|
|
|
<li><span class="nobr"><a href=
|
|
|
|
"http://www.projectliberty.org/">http://www.projectliberty.org/</a></span></li>
|
|
|
|
|
|
|
|
<li><span class="nobr"><a href=
|
|
|
|
"http://www.entrouvert.com/fr/identite-numerique/liberty-alliance">http://www.entrouvert.com/fr/identite-numerique/liberty-alliance</a></span></li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id="HLeprojetFederID">Le projet
|
|
|
|
FederID</span></h4><br />
|
|
|
|
<br />
|
2008-07-04 12:11:40 +02:00
|
|
|
<img src="bouton_federid.png" alt="bouton_federid.png" /><br />
|
2008-02-25 12:32:36 +01:00
|
|
|
<br />
|
|
|
|
Le projet <span class="wikiexternallink"><a href=
|
|
|
|
"http://www.federid.org">FederID</a></span> vise à offrir une
|
|
|
|
véritable solution de fédération et de gestion des
|
|
|
|
identités entièrement basée sur des logiciels libres.
|
|
|
|
Les briques utilisées sont :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li><span class="wikiexternallink"><a href=
|
|
|
|
"http://www.entrouvert.com/fr/identite-numerique/lasso">lasso</a></span>
|
|
|
|
: bibliothèque C gérant les échanges Liberty
|
|
|
|
Alliance et SAML 2.0.</li>
|
|
|
|
|
|
|
|
<li><span class="wikiexternallink"><a href=
|
|
|
|
"http://www.entrouvert.com/fr/identite-numerique/authentic">Authentic</a></span>
|
|
|
|
: fournisseur d'identité.</li>
|
|
|
|
|
|
|
|
<li><span class="wikiexternallink"><a href=
|
|
|
|
"http://www.interldap.org">InterLDAP</a></span> : gestion de contenu
|
|
|
|
LDAP (WUI) et partage d'attributs sur un cercle Liberty Alliance
|
|
|
|
(LAAP).</li>
|
|
|
|
|
|
|
|
<li><span class="wikiexternallink"><a href=
|
2008-12-13 10:52:53 +01:00
|
|
|
"http://wiki.lemonldap.objectweb.org1-Overview-fr.html">LemonLDAP::NG</a></span>
|
2008-02-25 12:32:36 +01:00
|
|
|
: WebSSO et gestion centralisée des autorisations.</li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id=
|
|
|
|
"HFonctionnementdeLemonLDAP3A3ANGavecLibertyAlliance">Fonctionnement de
|
|
|
|
LemonLDAP::NG avec Liberty Alliance</span></h4><br />
|
|
|
|
<br />
|
|
|
|
LemonLDAP::NG est utilisé comme fournisseur de service (Service
|
|
|
|
Provider). Il va alors faire appel à un fournisseur
|
|
|
|
d'identité pour déléguer l'authentification de
|
|
|
|
l'utilisateur. L'identité locale est associée
|
|
|
|
automatiquement à l'identité principale par un attribut
|
|
|
|
fournit par le fournisseur d'identité dans son assertion : la
|
|
|
|
fédération des comptes est donc automatique !<br />
|
|
|
|
<br />
|
|
|
|
L'avantage est qu'une fois l'utilisateur authentifié sur le
|
|
|
|
fournisseur d'identités, il est entré dans le cercle de
|
|
|
|
confiance et peut donc accéder à tous les services, dont le
|
|
|
|
portail LemonLDAP::NG. Ainsi les applications protégées par
|
|
|
|
LemonLDAP::NG deviennent aussi en quelque sorte des fournisseurs de
|
|
|
|
services dans le cercle Liberty Alliance, sans besoin
|
|
|
|
d'implémentation des protocoles Liberty Alliance !<br />
|
|
|
|
<br />
|
|
|
|
<img src=
|
|
|
|
"/xwiki/bin/download/NG/DocLA/DIA-ANR-1883-Fonctionnement_LemonLDAP%3A%3ANG_LA-1.png"
|
|
|
|
alt="DIA-ANR-1883-Fonctionnement_LemonLDAP::NG_LA-1.png" />
|
|
|
|
|
|
|
|
<ol>
|
|
|
|
<li>L'utilisateur se connecte à une ressource
|
|
|
|
protégée</li>
|
|
|
|
|
|
|
|
<li>La requête est interceptée par l'agent (handler)
|
|
|
|
LemonLDAP::NG. L'utilisateur n'a pas encore de session SSO ouverte, il
|
|
|
|
est redirigé sur le portail WebSSO.</li>
|
|
|
|
|
|
|
|
<li>Le portail LemonLDAP est configuré avec le module
|
|
|
|
d'authentification Liberty Alliance, il reçoit la requête
|
|
|
|
de l'utilisateur. Celui-ci peut choisir de s'identifier localement ou
|
|
|
|
d'utiliser Liberty Alliance : si plusieurs fournisseurs
|
|
|
|
d'identités sont référencés, une liste
|
|
|
|
permet à l'utilisateur de sélectionner le sien. Si un seul
|
|
|
|
fournisseur est présent, il est automatiquement
|
|
|
|
sélectionné.</li>
|
|
|
|
|
|
|
|
<li>L'utilisateur est redirigé vers le fournisseur
|
|
|
|
d'identités sélectionné.</li>
|
|
|
|
|
|
|
|
<li>Le fournisseur reçoit la requête et présente un
|
|
|
|
formulaire.</li>
|
|
|
|
|
|
|
|
<li>L'utilisateur renseigne son identifiant et son mot de passe et
|
|
|
|
soumet le formulaire.</li>
|
|
|
|
|
|
|
|
<li>L'authentification est effectuée sur l'annuaire.</li>
|
|
|
|
|
|
|
|
<li>Quand l'authentification est validée, le NameIdentifier est
|
|
|
|
transmis à l'utilisateur dans une requête de redirection
|
|
|
|
vers l'adresse Assertion Consumer du portail SSO.</li>
|
|
|
|
|
|
|
|
<li>L'assertion est reçue par le portail avec le
|
|
|
|
NameIdentifier.</li>
|
|
|
|
|
|
|
|
<li>Un filtre est appliqué sur l'annuaire pour retrouver les
|
|
|
|
informations de l'utilisateur (DN et habilitations) à partir du
|
|
|
|
NameIdentifier, qui a été injecté au
|
|
|
|
préalable dans l'annuaire.</li>
|
|
|
|
|
|
|
|
<li>Ces informations sont stockées en session (MySQL, ...).</li>
|
|
|
|
|
|
|
|
<li>L'utilisateur est redirigé vers l'adresse initiale de la
|
|
|
|
ressource protégée.</li>
|
|
|
|
|
|
|
|
<li>L'agent détecte le cookie contenant l'identifiant de
|
|
|
|
session.</li>
|
|
|
|
|
|
|
|
<li>L'habilitation d'accès est vérifiée dans la
|
|
|
|
session.</li>
|
|
|
|
|
|
|
|
<li>Les requêtes parviennent à la ressource
|
|
|
|
protégée.</li>
|
|
|
|
</ol>
|
|
|
|
|
|
|
|
<h3 class="heading-1-1"><span id=
|
|
|
|
"HInstallationetparamC3A9trage">Installation et
|
|
|
|
paramétrage</span></h3>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id=
|
|
|
|
"HConsidC3A9rations">Considérations</span></h4><br />
|
|
|
|
<br />
|
|
|
|
Tous les composants sont accessibles par leur nom DNS, considérons
|
|
|
|
donc les noms suivants :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li>Fournisseur d'identité : <span class="nobr"><a href=
|
|
|
|
"http://authentic.mydomain.com">http://authentic.mydomain.com</a></span></li>
|
|
|
|
|
|
|
|
<li>Application protégée : <span class="nobr"><a href=
|
|
|
|
"http://appli.mydomain.com">http://appli.mydomain.com</a></span></li>
|
|
|
|
|
|
|
|
<li>Portail Websso : <span class="nobr"><a href=
|
|
|
|
"http://websso.mydomain.com">http://websso.mydomain.com</a></span></li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id=
|
|
|
|
"HFournisseurd27identitC3A9">Fournisseur
|
|
|
|
d'identité</span></h4><br />
|
|
|
|
<br />
|
|
|
|
Pour que l'architecture fonctionne, il faut disposer d'un serveur
|
|
|
|
d'identité Liberty Alliance. Si aucun n'est déjà
|
|
|
|
installé, il faut alors le faire, avec par exemple le produit
|
|
|
|
<span class="wikiexternallink"><a href=
|
|
|
|
"http://authentic.labs.libre-entreprise.org/">Authentic</a></span>.<br />
|
|
|
|
<br />
|
|
|
|
Toute la documentation d'installation se trouve ici : <span class=
|
|
|
|
"nobr"><a href=
|
|
|
|
"http://authentic.labs.libre-entreprise.org/doc/fr/authentic-admin.html">http://authentic.labs.libre-entreprise.org/doc/fr/authentic-admin.html</a></span>
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id="HComposantsLemonLDAP3A3ANG">Composants
|
|
|
|
LemonLDAP::NG</span></h4><br />
|
|
|
|
<br />
|
|
|
|
Tous les composants de LemonLDAP::NG doivent être installés
|
|
|
|
normalement, et une configuration correcte doit être activée.
|
|
|
|
|
|
|
|
<h4 class="heading-1-1-1"><span id="HPortailLibertyAlliance">Portail
|
|
|
|
Liberty Alliance</span></h4><br />
|
|
|
|
<br />
|
|
|
|
Le seul composant à adapter est le portail, les autres (handler et
|
|
|
|
manager) fonctionnent sans configuration supplémentaire.
|
|
|
|
|
|
|
|
<h5 class="heading-1-1-1-1"><span id=
|
|
|
|
"HInstallationdesfichiersspC3A9cifiques">Installation des fichiers
|
|
|
|
spécifiques</span></h5><br />
|
|
|
|
<br />
|
|
|
|
Les éléments nécessaires au fonctionnement du portail
|
|
|
|
se trouvent dans le répertoire example/AuthLA des sources du module
|
|
|
|
lemonldap-ng-portal :<br />
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
# cd lemonldap-ng-X.X.X.X/lemonldap-ng-portal/example/AuthLA
|
|
|
|
# ls -la
|
|
|
|
</pre>
|
|
|
|
</div><br />
|
|
|
|
<br />
|
|
|
|
Copier ces fichiers dans le répertoire du portail (par exemple
|
|
|
|
/var/www/lemonldap-ng/web/portal) :<br />
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
# cp -r * /<span class="java-keyword">var</span>/www/lemonldap-ng/web/portal
|
|
|
|
</pre>
|
|
|
|
</div><br />
|
|
|
|
<br />
|
|
|
|
Les fichiers sont les suivants :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li>idps.xml : liste des fournisseurs d'identités</li>
|
|
|
|
|
|
|
|
<li>index.pl : implémentation du portail</li>
|
|
|
|
|
|
|
|
<li>error403.pl : page d'erreur utilisant les fichiers
|
|
|
|
modèles</li>
|
|
|
|
|
|
|
|
<li>liberty/ : points d'accès SOAP (liens symboliques vers
|
|
|
|
index.pl)</li>
|
|
|
|
|
|
|
|
<li>ressources/ : metadata Liberty Alliance</li>
|
|
|
|
|
|
|
|
<li>ressources/db/ : scripts SQL de création des tables de
|
|
|
|
gestion des identités Liberty Alliance</li>
|
|
|
|
|
|
|
|
<li>tpl/ : fichiers modèles (HTML Template)</li>
|
|
|
|
|
|
|
|
<li>tpl/themes : thèmes CSS</li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h5 class="heading-1-1-1-1"><span id=
|
|
|
|
"HCrC3A9ationdesmetadataduSP">Création des metadata du
|
|
|
|
SP</span></h5><br />
|
|
|
|
<br />
|
|
|
|
Des clés doivent être générées par
|
|
|
|
OpenSSL :<br />
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
# openssl genrsa -out lemonsp-key-<span class=
|
|
|
|
"java-keyword">private</span>.pem 2048
|
|
|
|
# openssl rsa -in lemonsp-key-<span class=
|
|
|
|
"java-keyword">private</span>.pem -pubout -out lemonsp-key-<span class=
|
|
|
|
"java-keyword">public</span>.pem
|
|
|
|
# mv *.pem /<span class=
|
|
|
|
"java-keyword">var</span>/www/lemonldap-ng/web/portal/ressources/
|
|
|
|
</pre>
|
|
|
|
</div><br />
|
|
|
|
<br />
|
|
|
|
Remplacer également l'adresse DNS indiquée dans le fichier
|
|
|
|
ressources/lemonsp-metadata.xml :<br />
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
# sed -i 's/auth.example.com/websso.mydomain.com/' ressources/lemonsp-metadata.xml
|
|
|
|
</pre>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<h5 class="heading-1-1-1-1"><span id=
|
|
|
|
"HEnregistrementdeLemonLDAP3A3ANGsurlefournisseurd27identitC3A9s">Enregistrement
|
|
|
|
de LemonLDAP::NG sur le fournisseur d'identités</span></h5><br />
|
|
|
|
<br />
|
|
|
|
Les fichiers modifiés ci-dessus doivent être
|
|
|
|
intégrés au fournisseur d'identité, comme
|
|
|
|
indiqué dans la documentation d'administration d'Authentic :
|
|
|
|
<span class="nobr"><a href=
|
|
|
|
"http://authentic.labs.libre-entreprise.org/doc/fr/authentic-admin.html#head-c79163b64fdd684bf07a048f3a26d9736a4d5207">
|
|
|
|
http://authentic.labs.libre-entreprise.org/doc/fr/authentic-admin.html#head-c79163b64fdd684bf07a048f3a26d9736a4d5207</a></span>
|
|
|
|
|
|
|
|
<h5 class="heading-1-1-1-1"><span id=
|
|
|
|
"HEnregistrementdufournisseurd27identitC3A9ssurLemonLDAP3A3ANG">Enregistrement
|
|
|
|
du fournisseur d'identités sur LemonLDAP::NG</span></h5><br />
|
|
|
|
<br />
|
|
|
|
Les fournisseurs d'identités sont définis dans le fichier
|
|
|
|
idps.xml :<br />
|
|
|
|
<br />
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
<span class="xml-tag"><laIdpList></span>
|
|
|
|
<span class="xml-tag"><idp name=<span class=
|
|
|
|
"xml-quote">"Identity Provider 1 : Authentic"</span>></span>
|
|
|
|
<span class="xml-tag"><url></span><span class=
|
|
|
|
"nobr"><a href=
|
|
|
|
"http://authentic.mydomain.com">http://authentic.mydomain.com</a></span><span class="xml-tag"></url></span>
|
|
|
|
<span class=
|
|
|
|
"xml-tag"><metadata></span>/path/to/idp1-metadata.xml<span class=
|
|
|
|
"xml-tag"></metadata></span>
|
|
|
|
<span class=
|
|
|
|
"xml-tag"><pubkey></span>/path/to/idp1-key-public.pem<span class=
|
|
|
|
"xml-tag"></pubkey></span>
|
|
|
|
<span class=
|
|
|
|
"xml-tag"><certificate></span>/path/to/idp1-key-public.pem<span class=
|
|
|
|
"xml-tag"></certificate></span>
|
|
|
|
<span class="xml-tag"></idp></span>
|
|
|
|
<span class="xml-tag"></laIdpList></span>
|
|
|
|
</pre>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<p class="paragraph"></p>Le paramètres sont les suivants :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li>name : nom de l'IdP, qui sera affiché à
|
|
|
|
l'utilisateur</li>
|
|
|
|
|
|
|
|
<li>metadata : fichier de metadata de l'IdP</li>
|
|
|
|
|
|
|
|
<li>pubkey : clé publique de l'IdP</li>
|
|
|
|
|
|
|
|
<li>certificate : certificat de l'IdP</li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h5 class="heading-1-1-1-1"><span id=
|
|
|
|
"HParamC3A9trageduportail">Paramétrage du portail</span></h5>
|
|
|
|
|
|
|
|
<p class="paragraph"></p>Toute la configuration spécifique à
|
|
|
|
Liberty Alliance est située dans le code Perl du portail :
|
|
|
|
|
|
|
|
<p class="paragraph"></p>
|
|
|
|
|
|
|
|
<div class="code">
|
|
|
|
<pre>
|
|
|
|
# Local parameter to set the installation directory
|
|
|
|
my $install_dir = <span class="java-quote">"/<span class=
|
|
|
|
"java-keyword">var</span>/lib/lemonldap-ng/web/portal"</span>;
|
|
|
|
my $var_dir = <span class="java-quote">"/<span class=
|
|
|
|
"java-keyword">var</span>/lib/lemonldap-ng/"</span>;<br /><br />my $portal = Lemonldap::NG::Portal::AuthLA-><span class="java-keyword">new</span>({
|
|
|
|
configStorage => {
|
|
|
|
type => <span class="java-quote">"File"</span> ,
|
|
|
|
dirName => <span class=
|
|
|
|
"java-quote">"$var_dir/config"</span> ,
|
|
|
|
} ,<br /><br /> # Liberty Parameters
|
|
|
|
laSp => {
|
|
|
|
certificate => <span class=
|
|
|
|
"java-quote">"$install_dir/ressources/lemonsp-key-<span class=
|
|
|
|
"java-keyword">public</span>.pem"</span> ,
|
|
|
|
metadata => <span class=
|
|
|
|
"java-quote">"$install_dir/ressources/lemonsp-metadata.xml"</span> ,
|
|
|
|
privkey => <span class=
|
|
|
|
"java-quote">"$install_dir/ressources/lemonsp-key-<span class=
|
|
|
|
"java-keyword">private</span>.pem"</span> ,
|
|
|
|
secretkey => <span class=
|
|
|
|
"java-quote">"$install_dir/ressources/lemonsp-key-<span class=
|
|
|
|
"java-keyword">private</span>.pem"</span> ,
|
|
|
|
} ,
|
|
|
|
laIdpsFile => <span class=
|
|
|
|
"java-quote">"$install_dir/idps.xml"</span> ,
|
2009-01-25 18:23:15 +01:00
|
|
|
laStorage => <span class="java-quote">"File"</span>,
|
2008-02-25 12:32:36 +01:00
|
|
|
laStorageOptions => {
|
|
|
|
Directory => <span class=
|
|
|
|
"java-quote">"$var_dir/<span class=
|
|
|
|
"java-keyword">var</span>/assertion"</span> ,
|
|
|
|
LockDirectory => <span class=
|
|
|
|
"java-quote">"$var_dir/<span class="java-keyword">var</span>/lock"</span> ,
|
|
|
|
} ,
|
|
|
|
laDebug => 1 ,
|
|
|
|
laLdapLoginAttribute => <span class=
|
|
|
|
"java-quote">"uid"</span> ,<br /><br /> # Parameters that permit to access lemonldap::NG::Handler local cache
|
|
|
|
localStorage => 'Cache::FileCache' ,
|
|
|
|
localStorageOptions => {} ,
|
|
|
|
});
|
|
|
|
</pre>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<p class="paragraph"></p>Certains paramètres sont ceux d'un portail
|
|
|
|
standard LemonLDAP::NG :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li>configStorage : stockage de la configuration
|
|
|
|
générale</li>
|
|
|
|
|
|
|
|
<li>localStorage : stockage du cache local</li>
|
|
|
|
|
|
|
|
<li>localStorageOptions : options de stockage du cache local</li>
|
|
|
|
</ul>La configuration spécifique est effectuée dans les
|
|
|
|
paramètres suivants :
|
|
|
|
|
|
|
|
<ul class="star">
|
|
|
|
<li>$install_dir : répertoire d'installation du portail</li>
|
|
|
|
|
|
|
|
<li>$var_dir : répertoire de stockage des données</li>
|
|
|
|
|
|
|
|
<li>laSP : metadata et et clés du SP</li>
|
|
|
|
|
|
|
|
<li>laIdpsFile : fichier XML de définition des IdPs</li>
|
|
|
|
|
|
|
|
<li>laStorage : stockage des données Liberty Alliance</li>
|
|
|
|
|
|
|
|
<li>laStorageOptions : options de stockage des données Liberty
|
|
|
|
Alliance</li>
|
|
|
|
|
|
|
|
<li>laDebug : activation des traces des fonctions Liberty Alliance</li>
|
|
|
|
|
|
|
|
<li>laLdapLoginAttribute : attribut LDAP contenant le NameIdentifier
|
|
|
|
renvoyé par l'IdP</li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<h3 class="heading-1-1"><span id=
|
|
|
|
"HDC3A9monstration">Démonstration</span></h3>
|
|
|
|
|
|
|
|
<p class="paragraph"></p>Une démonstration en ligne est disponible
|
|
|
|
depuis le site du projet FederID : <span class="wikiexternallink"><a href=
|
|
|
|
"http://federid.objectweb.org/xwiki/bin/view/Main/Demonstration">http://federid.objectweb.org/xwiki/bin/view/Main/Demonstration</a></span>
|
|
|
|
</div>
|
2008-08-30 09:59:02 +02:00
|
|
|
|
|
|
|
<p class="footer"><a href="index.html">Index</a></p>
|
2008-02-25 12:32:36 +01:00
|
|
|
</body>
|
|
|
|
</html>
|