Demander un devis

Développement d'extensions Keycloak (SPI) sur mesure

Actions de connexion personnalisées, fournisseurs d'identité spécifiques, bases d'utilisateurs sur mesure : presque tout est possible avec Keycloak grâce à ses extensions. Nous les concevons, les développons et les maintenons.

Parlons de votre projet

Étendre Keycloak sans le forker

Keycloak couvre la plupart des besoins d'authentification standard. Quand votre cas d'usage sort du cadre — un contrôle spécifique pendant la connexion, une donnée métier à placer dans les tokens, une base d'utilisateurs existante à brancher — Keycloak s'étend grâce à ses Service Provider Interfaces (SPI) : des points d'extension Java, packagés en JAR et déployés à côté du serveur, sans modifier son code source.

Nous développons ces extensions depuis des années, pour nos clients comme en open source.

Ce que nous développons

Authenticators et flows

Des étapes de connexion sur mesure : filtrage par adresse IP, user agent ou domaine d'email, code PIN, step-up authentication, contrôles métier pendant la connexion.

Required actions et action tokens

Des parcours imposés à l'utilisateur, des liens sécurisés à usage unique envoyés par email, le choix d'une adresse email secondaire.

Event listeners

Réagir aux événements Keycloak (connexion, inscription, modification de compte, actions d'administration) : webhooks, audit, synchronisation avec vos outils, workflows.

Protocol mappers

Ajouter dans les tokens des informations issues d'un en-tête HTTP, d'une API ou d'un fournisseur d'identité externe, ou transformer les claims existants.

Utilisateurs et fédération

Brancher une base d'utilisateurs existante ou une API comme source d'identités, authentifier via Keycloak les applications qui ne parlent que LDAP.

Endpoints REST et intégrations

De nouveaux endpoints d'API, la génération de configuration pour vos proxys d'authentification, des métriques métier exposées à Prometheus.

Notre méthode

  • Le besoin est reformulé par écrit avant la première ligne de code : quel SPI, quel flux, quelles limites.
  • D'un prototype fonctionnel à une solution testée, prête pour la production.
  • Une livraison complète : code source, tests unitaires, guide de déploiement et documentation de maintenance.
  • La maintenance de vos extensions au fil des versions de Keycloak, dont les API internes évoluent régulièrement.
  • Des extensions compatibles avec Keycloak auto-hébergé comme avec Keycloak managé sur Clever Cloud.

Nos extensions open source

Une partie de notre travail est publiée sur GitHub et utilisée en production :

Questions fréquentes

Qu'est-ce qu'un SPI Keycloak ?

Une Service Provider Interface est un point d'extension de Keycloak : une interface Java que l'on implémente, packagée en JAR et déposée dans le dossier providers du serveur. Authentification, contenu des tokens, stockage des utilisateurs, événements, endpoints REST : la plupart des comportements de Keycloak peuvent être étendus ainsi, sans modifier son code source.

Une extension résiste-t-elle aux mises à jour de Keycloak ?

Les API internes de Keycloak évoluent d'une version majeure à l'autre. Nous privilégions les interfaces documentées pour limiter l'impact, et nous pouvons maintenir vos extensions à chaque montée de version dans le cadre de notre support.

Peut-on installer une extension sur un Keycloak managé ?

Oui, si l'offre le permet. Sur Keycloak chez Clever Cloud, il suffit de déposer le JAR dans le dossier providers/ du FS Bucket, puis de reconstruire et redémarrer l'application.

Parlons de votre Keycloak

Décrivez-nous votre contexte en quelques lignes : nous revenons vers vous rapidement pour en discuter et vous proposer une approche adaptée.

contact@please-open.it

Ou suivez-nous : LinkedIn · GitHub · Blog