Cybersécurité

Keycloak, mise en œuvre

Objectifs de la formation

  • Créer une instance de Keycloak
  • Maîtriser la fonctionnalité Serveur d’autorisation OAuth de Keycloak
  • Maîtriser la fonctionnalité Identity Brokering de Keycloak
  • Connaitre la syntaxe et sémantique de SAML 2
  • Mettre en œuvre des metrics Keycloak


Programme de la formation

Installation

  • Les services fournis par Keycloak.
  • Les protocoles standards et l’évolution des technologies standards.
  • Serveur d’autorisation OAuth 2.0.
  • Fournisseur d’identité : web SSO en IdP (identity provider) Initiated SSO ou OP OpenID Connect.
  • Courtage d’identité (Identity Brokering).
  • Clients, LDAP et importance de la signature numérique dans Keycloak.

Travaux pratiques

Installer, créer une instance d’un annuaire LDAP, une instance de Keycloak/Quarkus. Synchroniser les utilisateurs LDAP avec Keycloak. Personnaliser la clef de signature Keycloak (SAML et OIDC).

Les protocoles standards

  • OAuth 2.0 : la syntaxe et les concepts, Access Token Opaque ou JWT, Refresh Token, les scopes.
  • OpenID Connect : syntaxe et concepts (ID Token, Authorization Code Flow/PKCE, Implicit Flow, Device Code Flow).
  • Les évolutions : CIBA, FAPI, OAuth 2.1.

Travaux pratiques

Configurer Keycloak et une application Password Flow OIDC (script shell) en Code Flow OIDC (module Apache mod_auth_openidc), en Implicit Flow OIDC (app JavaScript) et en Device Flow (script shell).

SAML V2

  • Les concepts de base SAML V2.
  • Les assertions XML.
  • L’identity provider (IdP).
  • Le service provider (SP).
  • Les bindings.
  • IdPinitiated ou SP initiated.
  • Web SSO Profile et ECP Profile.

Travaux pratiques

Paramétrer IdP SAML V2 de Keycloak (traceur SAML V2 dans le navigateur, installer et configurer le SP mod_auth_mellon Apache, le SP client4 en web SSO Profile, tester le fonctionnement IdP Initiated).

Le mode Cluster (HA)

  • Architecture de Keycloak.
  • Keycloak : de Wildfly et Quarkus, sa base de données et le cache partagé Infinispan.

Travaux pratiques

Installation de 2 serveurs Keycloak en mode Cluster (HA).

Administration de Keycloak

  • Interfaces d’administration.
  • Administration via la commande kcadm.sh, via l’API d’administration.
  • Délégation d’administration.
  • Gestion des flux d’authentifications.
  • Back Channel Logout OIDC.
  • Single Logout SAML V2.

Travaux pratiques

Administrer Keycloak (exporter le Realm MIRAMAR de l’instance H2, importer dans le cluster, tester la délégation d’administration, tester l’authentification).

Délégation d’authentification (IDP)

  • La notion de courtier d’identité (identity broker).
  • Les services attendus de l’Identity Brokering de Keycloak.
  • Identity Brokering Keycloak/Keycloak (OIDC).
  • Identity Brokering SAML Keycloak/Azure AD.
  • Identity Brokering SAML Keycloak/Auth0.
  • Lien Identity Brokering module mod_auth_oidc et Keycloak.

Travaux pratiques

Mise en œuvre de l’authentification SAML 2.0 par Azure Active Directory (Azure AD), Keycloak / Auth0 et OpenID Connect Keycloak / Keycloak.

Audit et Monitoring

  • Audit des événements utilisateurs.
  • Audit des événements d’administration.
  • Mise en place de metrics
  • Architecture et cohabitation Keycloak, Prometheus et Graphana.

Travaux pratiques

Mise en place des metrics Keycloak. Supervision des événements utilisateurs et d’administration.

Please login to get access to the quiz
Hacking et Pentest : architectures embarquées (Prev Lesson)
(Next Lesson) Analyse Forensic et réponse à incidents de sécurité
Back to Cybersécurité
Public

Connaissances de base des architectures techniques web et de Linux.

Pré-requis

Cette formation s'adresse aux responsables réseaux, architectes, responsables études, ingénieurs système et développeurs qui ont à intégrer le produit Keycloak