Keycloak, des fondations aux choix d’architecture.
Un parcours guidé en français. On part des notions IAM si besoin, on apprend le modèle de Keycloak, puis on tranche : ce qui est natif, ce qui demande une extension, ce qui dépend de l’hébergeur.
Niveau :
Commencer le parcoursLire les verdicts
Chaque cours classe ce qu’il présente :
- Natif fourni par Keycloak, à configurer
- Extension demande du code (SPI) à maintenir
- Hébergeur dépend de la plateforme, à vérifier avec elle
Fondations
Identité, OAuth 2.0 et OpenID Connect, SAML, MFA : les notions que Keycloak met en œuvre.
- 1 Identité et IAM, les notions de base Prochain Poser le vocabulaire de la gestion des identités et des accès (authentification, autorisation, IdP, SSO, fédération, jetons) avant d'aborder les protocoles.
- 2 OAuth 2.0 et OpenID Connect Prochain Comprendre les rôles et les flux d'OAuth 2.0, puis ce qu'OpenID Connect ajoute pour authentifier l'utilisateur (ID token, claims, discovery, JWKS).
- 3 SAML 2.0 Prochain Comprendre le fonctionnement de SAML 2.0 (métadonnées, assertions, NameID, bindings, signature, SLO) et savoir quand il reste incontournable face à OpenID Connect.
- 4 L'authentification multifacteur Prochain Distinguer les facteurs d'authentification, comprendre OTP, WebAuthn et passkeys, la résistance au phishing, le step-up par niveaux et la récupération de compte.
Keycloak essentiel
Le modèle, les realms, les utilisateurs, les parcours, les jetons et le raccordement des applications.
- 5 Le modèle de Keycloak Prochain Les objets de Keycloak (realm, client, utilisateur, groupe, rôles, client scopes, protocol mappers, user profile) et la façon dont ils décident du contenu des jetons.
- 6 Le découpage en realms Prochain Choisir entre un realm unique, un realm par population ou un realm par application, en sachant ce que le realm isole et ce qu'un réglage par client permet sans en créer un nouveau.
- 7 Les sources d'utilisateurs et la reprise des comptes Prochain Fédération LDAP et Active Directory, User Storage SPI, migration au fil de l'eau, import d'empreintes de mots de passe, identity brokering et doublons : choisir une stratégie par source de vérité.
- 8 Les parcours d'authentification et le MFA Prochain Flux d'authentification, sous-flux conditionnels, required actions, facteurs disponibles, niveaux d'authentification (ACR, LoA) et step-up, protections du mot de passe, et ce que demanderait un MFA adaptatif.
- 9 Les rôles, les groupes et le contenu des jetons Prochain Organiser les rôles et les groupes de Keycloak, maîtriser ce qui part dans le jeton d'accès, et savoir expliquer pourquoi Authorization Services reste hors du socle.
- 10 Le raccordement des applications Prochain Choisir le bon type de client et le bon flux OIDC, authentifier les clients, configurer un fournisseur de services SAML, traiter la déconnexion et raccorder par reverse proxy les applications qui ne parlent ni OIDC ni SAML.
- 11 Ce que permet la plateforme hébergée Prochain Une grille de questions à poser à un hébergeur Keycloak managé, comme Cloud-IAM, pour savoir ce qu'il gère, ce qu'il autorise et ce qui reste à votre charge, avec pour chaque point ce que Keycloak permet en auto-hébergé.
Approfondir
Délégation, journaux, thèmes, configuration en code, extensions et API d'administration.
- 12 Organisations et délégation d'administration Prochain Rattacher des utilisateurs à des organisations avec Organizations, router leur connexion selon le domaine de l'e-mail et déléguer une partie de l'administration avec les fine-grained admin permissions v2.
- 13 Événements, journaux et SOC Prochain Distinguer événements utilisateur et événements d'administration, régler leur conservation, et choisir comment les faire parvenir à un SIEM : journaux serveur, API ou event listener.
- 14 Thèmes, parcours et accessibilité Prochain Comprendre les types de thèmes de Keycloak, ce qu'un thème par client permet, ce qu'apportent Keycloakify et le thème DSFR communautaire, et comment traiter l'accessibilité RGAA des pages de connexion.
- 15 Configuration en code et environnements Prochain Comparer export et import de realm, provider Terraform et keycloak-config-cli pour décrire la configuration de Keycloak en code, la promouvoir d'un environnement à l'autre et tenir les secrets hors du dépôt.
- 16 Points d'extension et coût de maintenance Prochain Connaître les SPI les plus utilisés (authenticator, required action, user storage, event listener, protocol mapper), le rythme des versions de Keycloak et ce que chaque extension coûte à chaque montée de version.
- 17 API d'administration et comptes de service Prochain Utiliser l'Admin REST API pour créer, rechercher et réinitialiser des comptes depuis une application, avec un compte de service limité au strict nécessaire.