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 !

OpenID Kinect, un nouveau standard pour améliorer l’adoption du SSO par les utilisateurs

La fondation OpenID continue ses efforts pour démocratiser l’authentification unique (SSO – Single Single On) et après la sortie du protocole OpenID Connect, elle s’associe aujourd’hui à Microsoft pour travailler sur un nouveau standard : OpenID Kinect.

OpenID Kinect

La ludification de la sécurité

C’est un fait reconnu en informatique, la ludification des applications a permis une meilleure adoption de celles-ci par les utilisateurs finaux. Et pourquoi n’en serait-il pas de même avec la sécurité ?

C’est en substance ce que promeut Hilary Jone, directrice du programme « La sécurité est mon amie, il nous faut l’aimer aussi » de la fondation OpenID :

Avec l’adoption de la Kinect de Microsoft, de nouvelles perspectives s’ouvrent à nous et vont enfin permettre de s’affranchir des mots de passe en offrant une réelle alternative, bien plus crédible que la biométrie ou les jetons physiques.

En effet, l’innovation principale du protocole OpenID Kinect est la standardisation d’un mode d’authentification alternatif au classique couple identifiant/mot de passe, encore utilisé par les principaux fournisseurs d’identités OpenID Connect tels que Google par exemple.

Ainsi l’utilisateur, au lieu de saisir son mot de passe, pourra prouver son identité en effectuant une chorégraphie qu’il aura au préalable enregistrée sur son fournisseur d’identité.

Une extension du protocole OpenID Connect

Dans OpenID Connect, qui reposait déjà sur un autre standard (OAuth 2.0), la récupération des données de connexion de l’utilisateur était rendue possible par l’utilisation du mot-clé « openid » dans la liste des étendues (scope) transmises dans la requête authentification :

http://auth.example.com/oauth2/authorize?response_type=code&client_id=lemonldap&scope=openid%20profile%20email%2Fauth.example.com%2Foauth2.pl&redirect_uri=http%3A%2F%3Fopenidconnectcallback%3D1&state=ABCDEFGHIJKLMNOPQRSTUVWXX

Désormais, vous pourrez utiliser en plus le mot-clé « kinect » qui indiquera que vous souhaitez récupérer les données d’authentification générée par la Kinect de l’utilisateur. le mot-clé « kinect » devra être également précisé dans les classes d’authentification (acr_values) afin de forcer le fournisseur d’identité à activer le mode Kinect pour l’authentification.

Comme pour OpenID Connect, les informations spécifiques de la Kinect seront transmises au client OpenID Connect dans un JWT (JSON Web Token).

Un prototype en Perl

Bien que la sortie officielle de ce nouveau standard soit prévue en fin d’année, des premiers prototypes sont en cours, dont un en Perl, utilisant, c’est évident, le framework Dancer.

Une extension pour Samba est également en préparation.

Bientôt en France ?

FranceConnect est aujourd’hui en ligne et permet grâce au protocole OpenID Connect de simplifier l’accès aux services en lignes de l’administration pour les citoyens. On peut par exemple accéder au site Service Public ou consulter son solde de points du permis de conduire en passant par cette nouvelle plate-forme d’authentification.

Mais demain, aura-t-on accès à un FranceKinect? On espère que l’État Français saura s’adapter à ce nouveau protocole et proposera cette facilité dans un nouvelle version de sa plate-forme.

OpenID Kinect Sport

Les perspectives sont ensuite infinies : stage de récupération de points de permis via une simulation de course automobile, démarches administratives dématérialisées dans Les Sims (vous pourrez laisser votre avatar faire la file d’attente à votre place !), ou encore cours de sport depuis chez soi (sans limite de nombre d’inscrits).

Bref, un petit pas de danse pour l’homme, mais un grand pas de danse pour l’humanité.