Que nous réserve la LDAPCon 2017 ?

La LDAPCon est une conférence internationale autour de la technologie LDAP et des enjeux de gestion des identités, d’authentification et d’habilitation.

L’événement qui se déroulera cette année à Bruxelles du 19 au 20 octobre, se tient tous les deux ans dans un pays différent :

Savoir-faire Linux, déjà commanditaire en 2015 (consultez notre retour sur cette édition) renouvelle avec plaisir son soutien à cette communauté en étant une nouvelle fois partenaire de l’édition 2017.

2 jours et 19 conférences, un programme riche et rythmé

Le programme de cette édition promet des interventions intéressantes, parmi lesquelles :

  • ReOpenLDAP : Modification d’OpenLDAP pour une utilisation intensive chez un opérateur de télécommunications
  • OpenLDAP pour Samba 4 : Point sur l’intégration d’OpenLDAP dans Samba 4 en lieu et place de l’annuaire natif codé par l’équipe Samba
  • PHP-LDAP : Des nouvelles de l’évolution de l’API LDAP dans PHP, délaissée depuis plusieurs années et que les développements reprennent
  • OpenLDAP : Des nouvelles du projet OpenLDAP par Howard Chu, le développeur principal

Les sujets afférents à LDAP comme la gestion des identités dans le Cloud, les habilitations/autorisations, l’authentification unique ou encore la supervision seront abordés dans les différentes présentations.

Savoir-faire Linux fera le point sur les différents protocoles de SSO (CAS, SAML et OpenID Connect) dans une intervention donnée vendredi après-midi, juste avant la présentation du logiciel FusionDirectory, le logiciel d’administration des données d’un annuaire LDAP, utilisé dans notre infrastructure interne et chez certains de nos clients.

Si cette conférence vous intéresse, vous pouvez réserver vos billets en ligne sur le site de la conférence.

Un nouveau standard de SSO pour les gouverner tous

L’authentification unique (en anglais Single Sign On ou SSO) est aujourd’hui bien implantée dans les systèmes d’information, grâce à une large offre de produits et surtout de nombreux standards comme CAS, SAML ou OpenID Connect, pour ne citer que les plus importants.

Cependant, ce domaine reste difficile d’accès car chaque nouvelle norme demande un temps d’apprentissage non négligeable et l’adaptation des applications. Afin d’éviter que ces technologies finissent dans un cul-de-sac, un nouveau standard unifiant les protocoles actuels a vu le jour : le standard des anneaux !

La fraternité de l’anneau

Ce standard part du principe que tous les protocoles de SSO fonctionnent sur le même modèle : une requête non authentifiée à un fournisseur de servicesls (application) est renvoyée à un fournisseur d’identité (portail) qui authentifie l’utilisateur puis transmet son identité au fournisseur de service dans un jeton.

Le fournisseur de service et le fournisseur d’identité font partie d’un anneau de confiance (ou cercle de confiance) grâce à l’échange préalable de données de configuration (métadonnées).

Le standard des anneaux conserve donc tout simplement ce fonctionnement en simplifiant les échanges (uniquement des requêtes HTTP GET) mais en exigeant une validation des signatures des messages au bit près.

Les deux tours

Le processus d’authentification se joue en deux tours :

  1. Redirection de l’utilisateur via son navigateur entre fournisseur de services et fournisseur d’identité pour récupérer un jeton opaque (canal frontal)
  2. Validation du jeton directement entre les fournisseurs (canal dorsal)

Concrètement, le standard des anneaux va comme OpenID Connect reposer sur OAuth 2.0, à la différence que les jetons d’accès sont rebaptisés « access tolkien » pour les distinguer justement des jetons OAuth 2.0 classiques.

La redirection initiale est inspirée du protocole CAS (notion de service dans l’URL) et la gestion des signatures du protocole SAML (clé publique publiée dans les metadonnées).

Ainsi, ce nouveau standard tire parti du meilleur des protocoles existants en masquant la complexité de leurs implémentations.

Le retour du R.O.I.

Pour les applications devant intégrer le standard des anneaux, le retour sur investissement est immédiat : le nouveau protocole est simple, basé sur des composants existants, robuste et sûr.

En résumé, la gestion de l’identité de l’utilisateur peut se traduire du point de vue des applications vis-à-vis de utilisateurs par « Vous le savez ? Nous le saurons ! ».

Le standard des anneaux, un nouveau protocole sur lequel il faudra compter !

2017 : l’année de l’intelligence

Bonne année ! Si 2016 a été une année pleine de surprises, 2017 sera marquée par l’intelligence et l’audace. La technologie devient plus intelligente et nous n’avons pas d’autre choix que de l’être aussi.

Le bilan de 2016
En janvier, c’est l’heure de faire le bilan de l’année écoulée. Le nôtre et celui de notre environnement. 2016 fut toute une année. Beaucoup d’artistes géniaux nous ont quitté, dont de nombreux musiciens. Les Britanniques ont rappelé leur insularité, un caractère profondément ancré de leur identité. Chez nos voisins du Sud, c’est un nouveau tournant politique et un ton qui détonne, à la suite de l’élection présidentielle en novembre dernier. Que j’en ai passé des heures les yeux rivés à mes écrans suivant les cours fluctuants de la Livre Sterling et de la bourse !
Cependant, cette nouvelle donne politique s’est invitée au Canada, dès les premiers jours de janvier, avec la hausse du prix du pétrole au Mexique (20%) et en Ontario (~10 %). À cette hausse s’ajoutent les rumeurs de départ de compagnies en raison du coût des affaires, d’autant que d’aucuns – notre premier ministre Justin Trudeau en tête – se préparent à renégocier les accords de l’Alena avec la nouvelle administration américaine. Dès lors, les inquiétudes surgissent à l’égard de l’industrie automobile en Ontario (et au Mexique). Heureusement, le Consumer Electronic Show 2017 (CES)  arrive sur une note positive. Le temps est venu pour des décisions intelligentes et audacieuses. Dont nous avons besoin plus que jamais. Et l’intelligence est, par chance, le thème de ce salon.

Se réjouir du CES 2017
Pour commencer l’année, j’aimerais réfléchir aux nouvelles façons dont la technologie peut nous faciliter la vie et la rendre plus riche encore. L’industrie automobile a, par exemple, fait des progrès remarquables. Toyota a présenté son Concept i car, au moment où on attend beaucoup de la robotique et de l’intelligence artificielle, notamment en matière de sécurité. BMW a une approche différente, plus solide, qui fait toutefois appel à ses partenaires industriels, avec Intel et Mobileye, afin de collaborer à une plateforme ouverte. BMW souhaite sortir sa première voiture autonome iNEXT en 2021.

Je crois que cette approche est plus solide, parce que les hommes et la technologie y ont le même poids sur la balance. A cet égard, le groupe français Renault, associé à Nissan et Mitsubishi a présenté un projet très audacieux de première voiture open source grand public. Le groupe vend 10 millions de véhicules par an, figurant parmi les 3 premiers constructeurs automobiles au monde.

La Twizy Renault ouvre les codes complètement, autant pour le software que la hardware. ARM et OSVehicle sont des partenaires clés dans cette aventure, invitant les autres constructeurs, la communauté de développeurs et les férus d’automobiles à construire la voiture du 21e siècle.

La première voiture open source grand public au monde. Construisons-là ensemble !

Twizy Renault. Photo de Jwh. CC BY-SA 3.0 lu,

Le défi est lancé. L’appel est lancé. Les meilleurs cerveaux travaillent à créer la voiture complètement autonome. Si je suis aussi passionné par les technologies intelligentes, c’est que, à mon sens, nous sommes sur le point de réaliser ce but, parce que des professionnels intelligents travaillent de manière libre et ouverte. Plus il y a de monde dessus, meilleures sont les données, comme l’est la solution.

Une technologie intelligente
Les nouvelles applications industrielles et commerciales qui débarquent aujourd’hui possèdent en leur sein une certaine dose d’intelligence artificielle. Au cours des années, la technologie est passée de l’analyse au big data et à l’intelligence artificielle. Ces techniques partagent cet usage massif des données (plus il y a de données, meilleure est la formation et donc la performance). Les voitures complètement autonomes ne le seront que grâce à la vision informatique et les techniques telle que le deep learning sont essentielles pour le réaliser.
Fait intéressant, plusieurs de ces technologies sont disponibles sous une licence libre ou open source. Par exemple Tensorflow, créé par l’équipe Google Brain, est disponible sur GitHub, avec une licence Apache 2.0. Tensorflow est utilisé par Google, Twitter Airbus, Uber, Snapchat, etc. Alors que IBM, Microsoft (CNTK, DMTK), Facebook, Amazon entre autres planchent sur leurs propres projets, Datamation présente 15 des meilleurs projets en IA sous licence libre / open source. En matière de big data, les termes Hadoop, Spark, R, Python MongoDB sont des noms récurrents aux oreilles des experts.

Des professionnels intelligents
Toutefois, l’intelligence artificielle ne peut se créer elle-même, cette tâche incombe à des personnes intelligentes, qui la façonnent, comme il en a été discuté à Davos l’année dernière. Pour une fois, l’industrie (toutes les industries) a des besoins importants en recrutement (lire : il y a de belles opportunités d’emploi) dans le secteur du libre et de l’open source. L’industrie automobile n’est qu’un exemple de la rencontre d’une technologie à inventer et d’un produit à offrir aux consommateurs. Il y a une réelle demande pour les métiers scientifiques et d’ingénierie. Avis à une jeunesse à la recherche de pistes d’orientation…
L’intelligence au travail repose sur ce que les gens savent et ce qu’ils font, et comment ils le font. La communauté du Logiciel Libre et de l’Open Source en est la démonstration quotidienne. Les logiciels et les solutions s’améliorent chaque jour parce que chacun y partage son savoir et ses compétences. Pour les jeunes diplômés, c’est un moyen de se faire la main en apprenant les meilleures pratiques, grâce à des professionnels plus expérimentés. L’industrie y verra une très bonne façon de créer des systèmes complexes, échelonnés et interopérables qui peuvent être maintenus de manière relativement facile sur une longue durée. Par exemple, Bosch travaille sur plusieurs logiciels libres et open source à destination de l’industrie automobile.

Une table ronde organisée par la Ryerson Commerce and Government Association (RCGA). De gauche à droite: Diane Francis (auteur récipiendaire de nombreux prix et entrepreneure), Alex Goncharenko (CPA du Ministère ontarien des Services gouvernementaux et des Services aux consommateurs), Marc Lijour (Directeur, Savoir-faire Linux Toronto). Crédit photo Ryerson

Les contributions de Savoir-faire Linux
L’engagement de Savoir-faire Linux est l’un des piliers importants de notre stratégie. Nous sommes présents auprès de la jeunesse, grâce à des commandites comme la Maison du logiciel libre à Montréal, en partenariat avec Google et Red Hat. À Toronto, nous avons participé à plusieurs présentations dans des écoles postsecondaires pour guider les jeunes en matière d’orientation, notamment vers une carrière dans le secteur des technologies.

Il y a un mois, nous avons présenté la technologie Android au T.Hacks 2016, et Python au groupe Women in Computer Science and Women in IT Management à l’Université Ryerson. Cette présentation est disponible sur GitHub. Toujours à Ryerson, nous avons discuté protection de la vie privée et cybersécurité avec la Ryerson Commerce and Government Association (RCGA). À partir de 2017, nous commençons un partenariat de formation avec le Conseil des technologies de l’information et des communications, financé par le gouvernement de l’Ontario. Nous donnons la possibilité aux jeunes d’avoir un travail plus facilement dans les TIC, tout en aidant les petites entreprises à passer au numérique intelligemment.
Nous faisons appel à tous les jeunes intelligents et les professionnels, afin de nous rejoindre dans notre effort pour rendre le monde plus connecté, plus sécuritaire et plus humain. Et bien sûr, le rendre plus libre avec nous !

Des nouvelles du projet LDAP Tool Box, la boîte à outils pour les annuaires LDAP

Le projet LDAP Tool Box rassemble différents outils pour aider les administrateurs LDAP, que ce soit des paquets OpenLDAP, des scripts de supervision ou encore des applications Web. L’objectif est de simplifier la vie des administrateurs LDAP, car comme l’indique la description du projet :

Même les administrateurs LDAP ont besoin d’aide

Tous les outils proposés sont sous licence libre et disponibles sur GitHub.

Supervision

Des greffons de supervision sont fournis pour Nagios (ou tout autre logiciel compatible) et Cacti. Ils permettent par exemple de vérifier le statut de la réplication OpenLDAP, de collecter les statistiques sur les opérations LDAP ou encore surveiller le taux de remplissage d’une base MDB.

16c97f6538278bee29e8b9de1aac3516-media-593x381

Des configurations sont également disponibles pour la pile logicielle ELK (ElasticSearch, Logstash, Kibana) afin de tracer en temps réel l’utilisation des annuaires OpenLDAP.

openldap-elk-ldap-operations

Paquets OpenLDAP

OpenLDAP est le serveur LDAP le plus répandu, très proche du standard et offrant d’excellentes performances. Il est présent dans la plupart des distributions GNU/Linux mais celles-ci font souvent des choix de compilations non avalisées par les développeurs du projet, l’exemple le plus représentatif étant la bibliothèque SSL/TLS.

Le projet LDAP Tool Box fournit des paquets pour les environnements Debian/Ubuntu et Red Hat/CentOS. Ils sont compilés avec OpenSSL et embarquent les overlays officiels ainsi que certains overlays contribués comme « lastbind » et « smbk5pwd ».

Ils offrent également des modules spécifiques de gestion de la qualité des mots de passe comme check_password et ppm. Un script de gestion du service est installé par défaut, permettant les sauvegardes/restaurations des données et de la configuration.

Interface de gestion du mot de passe

L’application Self Service Password permet de fournir aux utilisateurs une interface simple pour changer son mot de passe, ou le réinitialiser quand celui-ci est perdu (ou expiré). Cette réinitialisation peut se faire :

  • Par un lien envoyé par mail
  • Par un code envoyé par SMS
  • Par la réponse à une question

Cette interface est compatible avec différents annuaires LDAP dont Active Directory et Samba 4.

ssp_1_0_change_password

La version 1.0 de ce logiciel est sortie en octobre 2016 (voir l’article sur LinuxFR).

Interface de consultation des données

L’application White Pages est une interface de consultation des données d’un annuaire LDAP, avec les fonctionnalités suivantes :

  • Recherche rapide : une invite de recherche dans le menu permet de retrouver directement des entrées à partir du nom, du prénom, du mail ou de l’identifiant
  • Recherche avancée : un formulaire liste les différents attributs sur lesquels une recherche peut être faite
  • Trombinoscope : toutes les entrées de l’annuaire sont affichées avec leur photo

Ces fonctions peuvent être activées/désactivées et les attributs cherchés ou affichés sont configurables. L’interface peut donc être utilisée avec n’importe quel annuaire LDAP.

wp_0_1_full_display

La version 0.1 de ce logiciel est sortie en novembre 2016 (voir l’article sur LinuxFR).

Relier son application à FranceConnect avec le logiciel libre LemonLDAP::NG

Développé depuis 2014 sous l’égide de la DINSIC, FranceConnect est la nouvelle plate-forme d’authentification à destination des citoyens français pour simplifier l’accès à l’administration en ligne.

Annoncé officiellement il y a quelques jours par le secrétaire d’État chargé de la réforme de l’État et de la simplification, FranceConnect est déjà utilisé par de nombreuses administrations.

Le protocole OpenID Connect

C’est le protocole OpenID Connect qui a été retenu pour FranceConnect, choix risqué en 2014 car le standard n’en était qu’à ses débuts, mais il a depuis fait ses preuves, comme en témoigne son adoption par Google.

J’ai eu l’occasion de présenter ce protocole dans différentes conférences, comme à la LDAPCon en novembre dernier :

LDAPCon2015_OpenIDConnect-Diapos

L’avantage d’avoir opté pour un standard comme OpenID Connect, c’est que cela permet d’utiliser n’importe quel logiciel ayant implémenté ce standard pour se relier à FranceConnect.

lemonldap-ng-france-connect

Depuis la version 1.9 de LemonLDAP::NG, on peut utiliser OpenID Connect, soit comme client (Relying Party), soit comme fournisseur (OpenID Provider).  Une application compatible avec LemonLDAP::NG peut donc alors très facilement récupérer une identité via FranceConnect sans développement supplémentaire !

Configuration de LemonLDAP::NG

Nous allons configurer LemonLDAP::NG comme client OpenID Connect. Pour cela il faut tout d’abord paramétrer le service OpenID Connect :

  • Gérer les règle de redirections (Apache ou Nginx) pour le chemin /oauth2/
  • Choisir « OpenID Connect » comme module d’authentification
  • Définir l’identifiant de l’entité (par défaut l’URL du portail)
  • Laisser les valeurs par défaut pour les points d’accès OAuth2
  • La configuration d’une clé de signature n’est pas nécessaire

Il reste ensuite à inscrire FranceConnect comme fournisseur OpenID Connect :

  • Créer les métadonnées JSON (non fournies par FranceConnect), par exemple (valeurs de la plate-forme de développement) :
{
"issuer": "https://fcp.integ01.dev-franceconnect.fr",
"authorization_endpoint": "https://fcp.integ01.dev-franceconnect.fr/api/v1/authorize",
"token_endpoint": "https://fcp.integ01.dev-franceconnect.fr/api/v1/token",
"userinfo_endpoint": "https://fcp.integ01.dev-franceconnect.fr/api/v1/userinfo",
"end_session_endpoint":"https://fcp.integ01.dev-franceconnect.fr/api/v1/logout"
}
  • Déclarer les attributs de l’identité pivot à collecter, par exemple : given_name, family_name, birthdate
  • Dans les options, renseigner le client_id et client_secret fourni par FranceConnect (voir l’étape suivante), et le scope lié aux attributs demandés, par exemple : openid email profile birth

Enregistrement auprès de FranceConnect

Pour que votre instance de LemonLDAP::NG puisse être reliée à FranceConnect, il faut formuler une demande officielle via ce formulaire.

Il est important de fournir l’URL de callback, qui par défaut dans LemonLDAP::NG est http://auth.example.com/?openidcallback=1. Mais vous devrez adapter cette URL avec votre propre nom de domaine, et si besoin d’autres paramètres en fonction des modules utilisés dans LemonLDAP::NG.

FranceConnect vous fournira alors les valeurs de client_id et client_secret dont vous avez besoin dans la configuration de LemonLDAP::NG.

C’est terminé !

LemonLDAP::NG est désormais configuré pour s’authentifier sur FranceConnect. Si certaines choses ne fonctionnent pas, référez-vous à la documentation technique disponible sur le site.

Les attributs collectés lors de l’authentification sont disponibles dans la session SSO et peuvent être transmis par LemonLDAP::NG aux applications de différentes façons : en-têtes HTTP, CAS, OpenID Connect ou SAML.

À vous de jouer !