Bonnes ID ~ Clément Oudot

Aller au contenu | Aller au menu | Aller à la recherche

. . . . . . _ _ _

Le SSO permet d'authentifier de manière unique un utilisateur sur plusieurs applications, évitant de lui faire retaper plusieurs fois son mot de passe. C'est le SSO d'un terrien en détresse...

Fil des billets

mardi, février 2 2010

À l'assaut de Lasso

Ça y est, le développement du support SAML2 dans LemonLDAP::NG a commencé, comme peuvent en témoigner les récents mouvement sur le SVN du projet.

Nous utilisons pour cela la bibliothèque Lasso, GPL, éditée par Entr'ouvert. Le binding Perl a été réécrit avec PerlXS, en remplacement de SWIG utilisé jusqu'alors.

Ce n'est que le début de l'aventure, mais ce développement promet d'être intense et captivant. Un première version stable du code devrait sortir à la fin du premier semestre 2010.

jeudi, décembre 17 2009

Des nouvelles du développement de LemonLDAP::NG

Cela fait quelques temps que la dernière version stable est sortie (v0.9.4 en juillet 2009), avec une mise à jour mineure (v0.9.4.1 en octobre 2009).

Le projet est toutefois très actif, avec en prévision la sortie d'une nouvelle version stable en 2010, probablement en début de second semestre. En particulier, les chantiers importants suivants sont actuellement menés :

  • Refonte du Manager avec intégration de l'ensemble des paramètres de configuration
  • Support SAML2 en tant que fournisseur d'identités et fournisseur de service
  • Support OpenID
  • Support DBI (bases de données via un connecteur DBI, comme MySQL, PostGreSQL, Oracle, ...)

Ci-dessous une vue du travail sur le nouveau Manager :

manager-preview.png

Les développements sont publiés régulièrement sur le dépôt du projet, permettant à chacun de venir tester les dernières fonctionnalités en avant-première.

vendredi, octobre 16 2009

LemonLDAP::NG en version 0.9.4.1

Il y a quelques jours, une nouvelle version mineure de LemonLDAP::NG est sortie, il s'agit de la version 0.9.4.1.

LemonLDAP::NG est une solution libre de WebSSO et de gestion des accès, couplée à Apache, et permettant de protéger des applications soit par mandataire inverse (reverse-proxy), soit par délégation (installation d'un agent au niveau de l'application).

Les principaux changements de la version 0.9.4.1 sont :

  • Mise à jour de la cage de sécurité (Safe jail)
  • Corrections de bogues mineurs sur Handler/CGI.pm
  • Possibilité d'utiliser l'explorateur de sessions avec les sessions stockées dans le LDAP
  • Prise en compte de la facilité syslog dans Common/CGI.pm
  • Correction d'un bogue dans le module _Multi.pm
  • Mise à jour de la documentation
  • Traduction debconf
  • Pas de remplacement des fichiers de conf lors de la mise à jour par RPM (%config(noreplace))

Pour plus d'informations :

mercredi, juillet 22 2009

Sortie de LemonLDAP::NG 0.9.4

Début juillet est sortie la dernière version de LemonLDAP::NG, un logiciel libre de WebSSO et gestion des accès. Les nouveautés de la version 0.9.4 ont été présentées lors des 10èmes RMLL à Nantes, lors de la journée consacrée à la gestion des identités. Pour ceux qui n'ont pas eu le privilège d'assister à cette conférence, cet article rappelle les principes de fonctionnement du produit et liste les nouvelles fonctionnalités. Les plus intéressés trouveront également dans le Linux Mag de cet été une bonne introduction au logiciel.

logo_lemonldap-ng.png

LemonLDAP::NG fournit des mécanismes d'authentification unique à l'intérieur d'Apache en utilisant les capacités de mod_perl à traiter les requêtes HTTP depuis leur arrivée, leur traitement jusqu'au renvoi de la réponse au client. La gestion de la session repose sur un cookie échangé entre les clients et les agents LemonLDAP::NG (Handlers) ne contenant qu'une clé permettant d'accéder aux données de session qui sont partagées entre les agents.

Ces données de sessions sont collectées lors de la phase d'authentification et permettent d'établir des règles d'accès complexes, avec notamment la possibilité de recourir aux expressions régulières, ou d'appeler des fonctions qui contrôlent par exemple les jours et horaires d'accès.

Le portail d'authentification présente à l'utilisateur connecté la liste des applications qui lui sont autorisées ainsi qu'un formulaire de changement de mot de passe.

Pour les administrateurs, une interface graphique permet de modifier les principaux paramètres de configuration ainsi que de naviguer dans les sessions ouvertes par les utilisateurs.

La version 0.9.4 apporte les nouveautés suivantes :

  • Utilisation de LDAP pour la configuration et les sessions : il était déjà possible d'utiliser un annuaire LDAP pour l'authentification, l'obtention des informations de session et pour le changement de mot de passe. À présent la configuration et les sessions peuvent être stockées dans l'annuaire, ce qui simplifie la configuration en mode réparti ou en cluster. Cela ne nécessite pas d'extension de schéma.
  • Accès SOAP : les fonctions SOAP ont été entièrement réécrites, avec pour conséquence la perte de compatibilité avec les configurations SOAP des versions précédentes. Toutefois l'objectif étant la simplification de l'architecture, c'est le portail qui devient un point d'accès SOAP, rendant obsolète l'écriture de scripts CGI dédiés. La protection du point d'accès SOAP est gérée directement dans l'hôte virtuel du portail au niveau de la configuration Apache.
  • Notifications : des notifications peuvent être envoyées aux utilisateurs qui devront les valider pour poursuivre leur accès au portail. Cela permet en particulier d'avertir un utilisateur de l'ouverture d'un accès à une application.
  • Fonctions dans les règles d'accès : des nouvelles fonctions permettent de configurer des accès sur une période (date de début, date de fin) ou sur des jours et horaires (par exemple du lundi au vendredi de 8h à 19h).
  • Adresse du portail dynamique : cela permet de présenter un portail différent selon l'application protégée d'origine ou la provenance des utilisateurs. Il est alors possible d'héberger plusieurs WebSSO avec une seule instance d'Apache.
  • Séparation claire des modules d'authentification, de données utilisateur et de mots de passe : il est possible alors de choisr par exemple Kerberos pour l'authentification et LDAP pour la lecture des informations utilisateur. Le module Multi permet de chaîner plusieurs méthodes.
  • Politique des mots de passe LDAP : le WebSSO gère à présent l'ensemble de la politique des mots de passe implémentée dans la plupart des annuaires LDAP. En particulier, le portail saura exiger le renouvellement du mot de passe lorsque celui aura été réinitialisé par un administrateur. Lors du changement de mot de passe, des messages d'erreurs explicites sont retournés aux utilisateurs (mot de passe trop court, historique, etc.).
  • Configuration du cross-domain : l'activation du cross-domain est simplifiée par l'ajout d'un paramètre dans le portail et dans l'agent. Le cross-domain permet d'ouvrir une session SSO sur plusieurs domaines DNS différents.
  • Validation de formulaires : cette fonctionnalité est juste apparue dans cette version et doit être utilisée avec précaution. Elle permet de poster des données sur des applications protégées, ce qui étend la compatibilité de LemonLDAP::NG avec n'importe quelle application Web.
  • Double cookie : si activée, cette fonction créée deux cookies, un pour HTTP et l'autre pour HTTPS. Ainsi un cookie dérobé en HTTP ne pourra pas servir à entrer sur des applications HTTPS.

Liens :

mardi, juillet 7 2009

Petite mise à jour de la valve Tomcat pour LemonLDAP::NG

En attendant un article plus complet sur la sortie officielle de la version 0.9.4 de LemonLDAP::NG, voici quelques nouvelles de la valve Tomcat.

Un version 2.1 a été publiée il y a quelques jours apportant un nouveau paramètre : passTrough. Ce paramètre permet de refuser toute connexion ne possédant pas les en-têtes attendues.

Par défaut toutes les connexions arrivent jusqu'à l'application. Avec le paramètre passTrough à "false", les en-têtes sont requises. Le paramètre allows permet toujours de filtrer les connexions autorisées par adresse IP.

Plus d'informations sur la page dédiée du wiki LemonLDAP::NG.

Merci à Thomas Chemineau pour la contribution, et Pascal Pejac pour la création de la valve.

mercredi, juillet 1 2009

LemonLDAP::NG around the world

On a parlé, on parle et on parlera de LemonLDAP::NG en 2009 !

Voici les différents pointeurs et rendez-vous à ne pas rater :

À très bientôt !

LemonLDAP::NG 0.9.4 en version beta

Depuis quelques jours une version beta de la nouvelle mouture (0.9.4) de LemonLDAP::NG est disponible en téléchargement sur la forge OW2.

Cette version permet de tester dès maintenant les nouvelles fonctionnalités comme :

  • Gestion de la configuration directement dans l'annuaire
  • Envoi d'un nouveau mot de passe par mail
  • Nouvelle gestion SOAP des sessions et de la configuration
  • Jours et horaires d'accès (avec gestion des fuseaux horaires)

Cette liste n'est pas exhaustive et sera complétée pour la sortie officielle de la 0.9.4. En attendant n'hésitez pas à essayer la version beta !

Liens :

lundi, janvier 19 2009

Sortie de LemonLDAP::NG 0.9.3

LemonLDAP::NG est un logiciel de Web-SSO, développé par Xavier Guimard et destiné à protéger des applications Web. Pour les utilisateurs, cela permet de ne s'authentifier qu'une seule fois, et pour les administrateurs du WebSSO cela permet de contrôler de manière centralisée les droits d'accès aux applications.

logo_lemonldap-ng.png

LemonLDAP::NG est une réécriture de la version initiale LemonLDAP, qui n'est aujourd'hui plus maintenue. Eric German, leader historique de la communauté, est à présent impliqué sur un nouveau projet, LemonID, que nous vous invitons à découvrir.

Cette version est normalement la dernière avant la 1.0 qui se concentrera sur la refonte de la configuration (utilisation de XML, exhaustivité des paramètres de configuration dans la console d'administration Web, etc.). Elle apporte toutefois un lot conséquent de corrections et d'améliorations, telles qu'un menu des applications autorisées, un explorateur de session, et des paquetages pour les systèmes basés sur Debian et RedHat.

Cette version est également importante en terme de sécurité car elle corrige quelques failles de Cross Site Scripting (XSS) et ajoute un contrôle plus fort sur les URL de redirection.

LemonLDAP::NG permet de déployer trois types d'architectures de WebSSO :

  • Un système de mandataire inverse (reverse-proxy) qui concentre en un point unique le portail d'authentification et les agents de contrôles. L'utilisateur n'accède alors jamais directement aux applications mais utilise toujours le mandataire.
  • Un système de délégation, où les agents de contrôles sont déployés au plus près des applications. Dans ce cas l'utilisateur accède directement aux applications, dont les agents interagissent avec le portail d'authentification pour valider les sessions.
  • Un système mixte, mélangeant le mandataire inverse et la délégation.

Voici quelques détails supplémentaires sur les principales fonctionnalités du produit :

  • Indépendance des mécanismes d'authentification et de recherche des données de l'utilisateur : la phase d'authentification permet de valider la création de la session WebSSO, elle peut être effectuée sur un annuaire LDAP, par certificat SSL, par Liberty Alliance, par CAS, par Kerberos ou tout autre méthode d'authentification disponible dans Apache2. La phase de recherche des données correspond elle à la récupération des informations propres à l'utilisateur (nom, mail, etc.) qui serviront d'une part à valider les règles d'accès, et d'autre part à approvisionner les applications protégées. Cette phase ne peut à l'heure actuelle être opérée que sur un annuaire LDAP (l'ajout d'autres méthodes est prévu dans les futures versions).
  • Utilisation des Web-Services (SOAP) : il est possible d'activer les Web-Services pour s'authentifier (et donc créer la session SSO correspondante), consulter et modifier les sessions existantes, consulter et modifier la configuration.
  • Portail d'authentification : il permet de s'authentifier lorsque l'on est redirigé depuis des applications protégées, mais propose également un module de menu dynamique des applications (seules les applications autorisées sont affichées à l'utilisateur) et un module changement de mot de passe. L'affiche de ces modules est également dynamique, et peut permettre par exemple de ne proposer le changement de mot de passe qu'à une certain profil d'utilisateurs.
  • Interface d'administration graphique : LemonLDAP::NG fournit par défaut un Manager qui permet d'éditer à travers une page Web la configuration générale du WebSSO ainsi que les droits d'accès et les en-têtes spécifiques à chaque application protégée. Cette nouvelle version propose également un explorateur de sessions, offrant une vue hiérarchique des sessions (par identifiant ou adresse IP), et affichant le contenu de chacune d'elles. Cette interface peut être protégée directement par le WebSSO.
  • Choix des backends de session et de configuration : les sessions peuvent être stockées comme fichiers, dans une base MySQL, par SOAP ou dans memcached. La configuration peut être stockée comme fichier, dans une base MySQL ou par SOAP. Ce choix permet de mettre en place très rapidement des solution de haute-disponibilité. En cas de configuration stockée sur un système distant, un mécanisme de cache permet de limiter le transfert des données sur le réseau.
  • Agents et applications compatibles : un certain nombre d'applications sont déjà compatibles avec LemonLDAP::NG, en particulier GLPI, Sympa, Dokuwiki, ... Mais des agents sont également disponibles, en particulier une valve pour Tomcat permettant le SSO sur les application J2EE délégant leur sécurité au conteneur de servlets (par exemple le CMS Lutece, probe, etc.). De plus, toutes les applications Web utilisant des protections Apache (par exemple par htaccess) sont nativement compatibles (c'est le cas de Nagios). Enfin, la nouvelle version de LemonLDAP::NG peut à présent mettre le mot de passe de l'utilisateur en session, ce qui permet par exemple le SSO sur des applications protégées par HTTP Basic (en particulier le fameux Outlook Web Access).
  • Pages de statuts et scripts de supervision : une page de statut est à présent disponible (équivalent au mod-status d'Apache), permettant de réaliser simplement des graphiques avec des outils de supervision (un script pour MRTG est fourni dans les exemples).
  • Politique des mots de passe : LemonLDAP::NG est compatible avec la politique des mots de passe des annuaires LDAP qui suivent le draft de la RFC. C'est le cas d'OpenLDAP avec l'overlay policy. Cela permet à l'utilisateur de savoir que son compte est bloqué ou expiré, et de changer son mot de passe en respectant les critères fixés dans l'annuaire (taille minimale, présence dans l'historique, etc.)

Cette version fait donc état de la grande maturité du produit et des nombreuses fonctionnalités offertes. Toute la communauté reste à l'écoute des utilisateurs pour répondre aux questions et enrichir le logiciel selon leurs besoins. Toutes les contributions sont également les bienvenues.

Liens :

vendredi, août 15 2008

Une nouvelle valve Tomcat et un plugin Dokuwiki pour LemonLDAP::NG

Début juillet ont été publiées deux contributions pour le produit de WebSSO LemonLDAP::NG : une nouvelle version de la valve Tomcat (par Pascal Pejac) et un plugin Dokuwiki (par Erwan Legall).

Le plugin Dokuwiki permet de configurer un nouveau mode d'authentification, nommé "lemonldap". Il ne fonctionne qui si l'agent (Handler) est sur le même serveur Apache que Dokuwiki (pas de reverse proxy, utilisation de la variable système REMOTE_USER). Une fois en place, l'authentification à votre wiki sera gérée par LemonLDAP::NG.

La valve Tomcat s'adresse à toutes les applications J2EE utilisant le conteneur de servlets pour leur gestion d'authentification et d'autorisation (identifiant et rôles des utilisateurs). Ainsi, vous pouvez gérer l'ensemble de vos rôles dans un annuaire LDAP central, et ces rôles seront fournis aux applications par LemonLDAP::NG. Vos applications n'ont pas à être modifiées, car c'est la valve qui sera chargée de communiquer avec le WebSSO. Cela garantit donc une intégration sans modification de code.

Liens :

lundi, juin 30 2008

Sortie de LemonLDAP::NG 0.9.2 et RMLL

Une nouvelle version de LemonLDAP::NG est sortie fin juin, apportant les changements suivants :

  • Nouvelle CSS dans le Manager (voir l'article dédié)
  • Création de "skins" pour le portail
  • Module de statut pour le handler et le portail
  • Différentes traductions
  • Refonte des modules d'authentification : chaque méthode a désormais son propre module Auth (AuthLDAP, AuthSSL, AuthLA, etc.)
  • Corrections des différents bugs

LemonLDAP::NG sera également présenté aux RMLL à travers le projet FederID : http://2008.rmll.info/FederID.html

Téléchargement :

Retrouvez ce projet sur Ohloh : http://www.ohloh.net/projects/lemonldap-ng/

jeudi, mai 8 2008

Nouveau thème pour le Manager de LemonLDAP::NG

C'est bien connu, le graphisme n'est pas le fort des projets Open Source, ce qui leur est souvent dommageable car, bien que techniquement excellents (et souvent meilleurs que leurs concurrents propriétaires), leur apparence "bricolée" détourne souvent les utilisateurs potentiels.

logo_lemonldap-ng.png

LemonLDAP::NG est un produit de SSO entièrement personnalisable, mais ne vient par défaut qu'avec un graphisme très limité. Une des parties visibles est le Manager, interface Web d'administration du produit. Un nouveau thème vient d'être créé pour ce module, qui sera installé par défaut dans les prochaines versions de LemonLDAP::NG.

Un petit aperçu avant/après :

SCR-LLNG-Manager-Exported-Variables-OLD.png SCR-LLNG-Manager-Exported-Variables.png

D'autres captures d'écrans sont disponibles ici.

lundi, avril 14 2008

Sortie de LemonLDAP::NG 0.9.1

Une nouvelle version mineure de LemonLDAP::NG est parue récemment, apportant quelques correctifs et amélioration sur la version 0.9 sortie en début d'année 2008, en particulier :

  • Correction du bug "logout_sso" : il est possible d'intercepter l'adresse de logout et de déclencher la déconnexion du SSO sans passer par l'application
  • Mise à jour du javascript du Manager qui n'était pas compatible avec IE7
  • Respect des règles lintian pour Debian
  • Utilisation du contrôle Password Policy pour afficher "compte bloqué" ou "mot de passe expiré" sur le portail (nécessite perl-ldap >= 0.35)
  • Utilisation du système de stockage de session standard pour les clés de fédération Liberty Alliance

logo_lemonldap_ng_orange.png

Téléchargement :

Retrouvez ce projet sur Ohloh : http://www.ohloh.net/projects/lemonldap-ng/