Keycloak Extensions entwickeln

02.12.2024 - 03.12.2024

Keycloak Extensions entwickeln (Online)

Beschreibung

Lerne in diesem zweitägigen Training, wie du Keycloak Extensions entwickeln und sie testen kannst. Du wirst die wichtigsten Konzepte und Objekte sowie die gängigsten SPIs kennenlernen.

Ein großer Vorteile der Keycloak-Plattform ist ihre Erweiterbarkeit um eigene Anforderungen und Implementierungen, ohne den eigentlichen Kern selbst bauen/kompilieren zu müssen. Keycloak setzt hier in weiten Teilen auf den Standard-Java SPI (Service Provider Interface) Mechanismus, der es erlaubt, eigene Erweiterungen zu einem Interface zu implementieren und diese Erweiterungen zur Laufzeit zum Anwendungskern dazu zu deployen bzw. in einem gemeinsamen Deployment in Produktion zu bringen. Nahezu jede Funktionalität ist in Keycloak über das SPI Pattern abgebildet und erlaubt so eine fast vollständige Anpassung von Keycloak an die eigenen Wünsche und Anforderungen.

In diesem 2-Tages-Workshop lernen wir zunächst das Konzept der Keycloak SPIs, bestehend aus Factory- und Provider-Klassen, kennen, sowie die wichtigsten Objekte, wie die KeycloakSession und andere *Context-spezifische Container. Danach implementieren wir die gängigsten Service Provider Interfaces wie EventListener, ResourceProvider, Authenticator, RequiredAction und User Storage und erstellen hiermit Beispielerweiterungen. Mit diesen Übungen erlangen wir das grundlegende Verständnis, wie SPIs für Keycloak entwickelt werden und auf welche Dinge es zu achten gilt.

Mit Hilfe der testcontainers-keycloak-Erweiterung werden wir einige unserer Extensions in einem Integration-Testszenario in einem „richtigen“ Keycloak-Server testen können.

Agenda

Kennenlernen der wichtigsten Konzepte für Keyclaok-Extensions

  • ProviderFactory und Provider Interfaces
  • KeycloakSession und *Context-spezifische Objekte

Implementierung der gängigsten Keycloak SPIs:

  • EventListener
  • ResourceProvider
  • Authenticator
  • RequiredAction
  • UserStorage

Testen von Erweiterungen mit testcontainers-keycloak

Deine Trainer:innen

Niko Köbler

Niko Köbler IT-Beratung

Keycloak, IAM

  • Keycloak Extensions entwickeln
  • Keycloak IAM & SSO
  • Keycloak und OpenID-Connect

Niko Köbler ist Freelancer und seit über acht Jahren als Keycloak- und IAM-Experte für Kunden aus unterschiedlichen Branchen europaweit tätig. Auf YouTube betreibt er seit Anfang 2021 einen erfolgreichen Keycloak-Channel und unterstützt die Community in verschiedenen Foren. Außerdem ist er ein bekannter und gefragter Sprecher auf IT-Konferenzen, Co-Lead einer Java User Group und schreibt als Autor Artikel für verschiedene Fachzeitschriften. https://www.n-k.de

Alle Infos zum Training