Lasso

De Cliss XXI
Révision datée du 17 avril 2007 à 16:06 par 193.251.53.202 (discussion) (→‎Exemples : pas d'espace autour de AssertionConsumerServiceURL)
Sauter à la navigation Sauter à la recherche

Présentation des prestations de SSO chez Entr'Ouvert.

Les projets

  • Lasso: bibliothèque multi-langages pour utiliser un environnement Liberty Alliance
  • Authentic: fournisseur d'identités
  • Larpe: reverse proxy, pour gérer Liberty Alliance sans toucher le code de l'application. Attention, cela ne fonctionne pas toujours, voir par exemple les services Libre-Entreprise qui n'ont pas pu être libertisés.

Exemples

Créer une paire de clef:

$ openssl genrsa -out smthing-priv.pem
$ openssl rsa -in smthing-priv.pem -pubout > smthing-pub.pem

Obtenir un fichier XML de IDP: installer Authentic. La doc de référence est INSTALL. Elle est un peu spartiate, voici un complément:

  • Paquets nécessaires:
echo "deb http://deb.entrouvert.org etch main" >> /etc/apt/sources.list
aptitude update
aptitude install python-lasso python-scgi libapache2-mod-scgi
  • Récupérer Authentic
svn checkout svn://labs.libre-entreprise.org/svnroot/authentic/trunk authentic
  • Installer Authentic
# Python code
sudo python setup.py install
# Images and CSS files
sudo cp -r root /usr/share/authentic/web
  • Démarrer Authentic (TODO: démarrer en www-data:www-data)
sudo ./authenticctl.py start
  • Paramétrer Apache (cf. INSTALL), par exemple pour Apache2+SCGI:
<VirtualHost 127.0.0.1>
   ServerAdmin webmaster@locahost
   ServerName www.example.com
   DocumentRoot /usr/share/authentic/web/

   SCGIMount / 127.0.0.1:3002
   <LocationMatch "^/(css|images|js)/.*">
     SCGIHandler off
   </LocationMatch>
</VirtualHost>
  • Suivre INSTALL pour configurer un premier compte, puis demander Liberty Identity Provider Metadata.

Obtenir un fichier XML de SP: voir les didactitiels (tutorials) MAIS MAIS MAIS ne mettez surtout pas d'espaces autour de votre AssertionConsumerServiceURL comme dans l'exemple, car ils ne seront pas nettoyés et SCGI renverra une URL invalide (et du coup une erreur 500) :/

Documentation

Autres

  • Candle is a sample Liberty Attribute Provider
  • Unwind is a sample Liberty Attributes Consumer
  • Expression is a Liberty Alliance, WebDAV and XML based web application framework with its own HTTP server; written in Python
  • Lasso Conformance Service Provider is a SAML 2.0 provider aimed to expose every aspect of SAML 2 protocols in the UI so they can be tested in conformance events
  • IdPC: Liberty Alliance Identity Provider as a C CGI program - ancêtre de Authentic?
  • Souk: ce projet, initialement un environnement de test, n'est non seulement plus maintenu mais également effacé, les auteurs recommandent d'utiliser Authentic à la place