Hamza
Azarou

Ingénieur IAM, spécialiste Keycloak et Red Hat build of Keycloak

Je conçois, déploie et fais évoluer des plateformes d'authentification en production : SSO OIDC et SAML, fédération LDAP et Kerberos, extensions Java sur mesure, sur OpenShift et en GitOps.

id_token émis pour le recruteur Signature vérifiée

Header algorithme et type


      

Payload claims


      

Scopes accordés

Mes domaines de compétence autour de Keycloak, chacun présenté comme un scope que je peux prendre en charge sur un projet.

openid profileProtocoles OIDC et OAuth 2.0

Configuration de clients confidentiels et publics, choix des grants adaptés à chaque application, diagnostic des échanges avec l'endpoint token et gestion du cycle de vie des jetons.

  • Authorization Code + PKCE
  • Client Credentials
  • Refresh token
  • client_secret_basic / post
  • Client scopes et mappers
saml:sp saml:idpSAML 2.0 et identity brokering

Intégration de fournisseurs de services SAML, configuration des URL ACS et des bindings, courtage d'identité vers des IdP d'entreprise avec mappers d'attributs.

  • Clients SAML
  • Assertion Consumer Service
  • Identity Providers SAML / OIDC
  • IdP mappers
federation:ldap krb5Fédération d'annuaires et Kerberos

Fédération LDAP et Active Directory, SSO transparent par SPNEGO avec keytab et krb5.conf montés dans les pods, et analyse des comportements de fédération lors des montées de version.

  • User Federation LDAP / AD
  • Kerberos / SPNEGO
  • Keytab et kvno
  • Pool de connexions JNDI
  • Mappers LDAP
spi:extensionsDéveloppement d'extensions Java

Développement de providers sur mesure et maintien de leur compatibilité d'une version à l'autre, avec alignement strict des versions Keycloak, Quarkus et Maven.

  • Authenticators (OTP, onboarding)
  • Protocol mappers
  • Event listeners
  • Extensions REST
  • Thèmes FreeMarker et i18n
  • Maven / Quarkus
authn:flows mfaParcours d'authentification

Conception de flows navigateur personnalisés, authentification forte par OTP, redirection vers les fournisseurs d'identité et gestion des actions requises.

  • Browser flows
  • TOTP / MFA
  • Required actions
  • Identity provider redirector
platform:openshiftDéploiement et haute disponibilité

Déploiement de Keycloak et RHBK 26.x sur OpenShift via l'Operator, images optimisées, clustering et architecture multi-site active avec réplication des caches entre datacenters.

  • Keycloak Operator
  • kc.sh build --optimized
  • JGroups / JDBC_PING
  • Infinispan / Red Hat Data Grid
  • Multi-site cross-DC
  • HAProxy
  • PostgreSQL
gitops:realmsConfiguration as code

Gestion déclarative des realms synchronisés par ArgoCD : clients, rôles, IdP, fédérations et flows versionnés dans Git, sans secret en clair.

  • ArgoCD
  • keycloak-config-cli
  • KeycloakRealmImport
  • Kustomize
  • Export et normalisation de realms
secrets:vault opsSécurité, performance et exploitation

Intégration de HashiCorp Vault au SPI vault de Keycloak, suivi et correction des CVE, montées de version majeures, tuning JVM et base de données sous charge, observabilité.

  • HashiCorp Vault
  • Gestion des CVE RHBK
  • Migration 26.2 vers 26.6
  • Tuning JVM / G1GC
  • Pool Agroal
  • Métriques et tracing
  • Logs JSON

Flux de réalisations

Des exemples de chantiers menés, présentés comme les étapes d'un flow d'authentification.

  1. Architecture multi-site active REQUIRED

    Mise en place de RHBK sur deux clusters OpenShift avec Data Grid en réplication cross-site synchrone et répartition par HAProxy, pour une continuité de service entre datacenters.

  2. SSO Kerberos sur annuaire d'entreprise REQUIRED

    Authentification transparente SPNEGO couplée à la fédération LDAP, avec gestion des keytabs et de la configuration Kerberos dans les pods.

  3. Extensions métier sur mesure REQUIRED

    Authenticators OTP et d'onboarding, mapper de rôles par expression régulière, event listener et endpoint de santé personnalisés.

  4. Realms pilotés par Git ALTERNATIVE

    Structuration d'un dépôt GitOps et synchronisation continue des realms avec ArgoCD et keycloak-config-cli.

  5. Montée de version et correctif de sécurité REQUIRED

    Passage de RHBK 26.2 à 26.6 pour corriger une CVE, avec adaptation des extensions, alignement Quarkus et revue des index JPA ajoutés entre versions.

  6. Stabilité sous charge CONDITIONAL

    Diagnostic de crashs à fort débit de connexions, réglage JVM, du pool de connexions base de données et de la fédération LDAP.

Environnement technique

IAM

  • Keycloak 26.x
  • Red Hat build of Keycloak
  • OIDC, OAuth 2.0, SAML 2.0
  • LDAP, Active Directory, Kerberos

Plateforme

  • OpenShift, Kubernetes
  • Keycloak Operator
  • Infinispan, Red Hat Data Grid
  • PostgreSQL, HAProxy

Automatisation

  • ArgoCD, GitOps
  • keycloak-config-cli
  • Docker, Podman
  • HashiCorp Vault

Développement

  • Java 21, Quarkus
  • Maven
  • SPI Keycloak
  • FreeMarker