Customizing KEYCLOAK mit Extensions - JUMPSTART

KEYCLOAK mit Service Providern an individuelle Anforderungen anpassen. - Wir implementieren 2 der gängigsten und am häufigsten eingesetzten Service Provider Interfaces um Keycloak zu erweitern.
Einer der großen Vorteile von KEYCLOAK ist die einfache Erweiterbarkeit der Plattform um eigene Anforderungen und Implementierungen, ohne den eigentlichen Kern, bzw. die Distribution von KEYCLOAK selbst bauen/kompilieren zu müssen. KEYCLOAK setzt hier in weiten Teilen auf den Java Service-Loader Standard, der es erlaubt, mittels SPIs (Service Provider Interface) eigene Erweiterungen zu implementieren und diese Erweiterungen zur Laufzeit zum Anwendungskern dazu zu deployen bzw. in einem gemeinsamen Deployment in Produktion zu bringen. Nahezu jede, zumindest jede wichtige 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 1-Tages Jumpstart 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 2 der gängigsten Service Provider Interfaces wie EventListener und Authenticator (ggf. noch RequiredAction) und erstellen hiermit Beispiel-Erweiterungen. 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-Test-Szenario in einem "richtigen" KEYCLOAK-Server testen können und müssen das System nicht mocken.
Agenda
- Kennenlernen der wichtigsten Konzepte für KEYCLOAK-Extensions
ProviderFactoryundProviderInterfacesKeycloakSessionund*Context-spezifische Objekte
- Implementierung der 2 gängigsten KEYCLOAK SPIs
EventListenerAuthenticator- (ggf.
RequiredAction)
- Testen von Erweiterungen mit
testcontainers-keycloak
Dein Nutzen
- Lerne wie KEYCLOAK-Extensions entwickelt werden.
- Lerne wie Du KEYCLOAK-Extensions testen kannst.
- Lerne die wichigsten Konzepte und Objekte für KEYCLOAK-Extensions kennen.
- Lerne die gängigsten KEYCLOAK SPIs anhand von Beispielen kennen.
Zielgruppe
Der Workshop richtet sich an alle Personen aus der Software-Entwicklung, die KEYCLOAK mit weiteren Features und eigenen Anforderungen erweitern möchten. Idealerweise haben die Teilnehmer schon Vorkenntnisse im Umgang mit KEYCLOAK.
Dieser Workshop ist KEINE Einführung in OAuth2/OIDC und KEYCLOAK selbst!
Lernziele
- KEYCLOAK Service Provider Interfaces (SPIs) implementieren
- KEYCLOAK-Extensions testen
- Kennenlernen der relevanten KEYCLOAK Interfaces und Klassen
- Sicherer Umgang mit den wichtigsten KEYCLOAK Interfaces, Klassen und Objekten
Technische Anforderungen
- Notebook/Laptop
- Java-IDE nach Wahl (z.B. IntelliJ IDEA, Eclipse, VS Code, Netbeans, etc.)
- JDK 21+
- Docker und Docker Compose V2 installiert und lauffähig (ggf. lokale Admin-Rechte auf dem Rechner erteilen)
- Internetzugriff (ggf. Proxy-/Firewall-/VPN-Konfigurationen etc. überprüfen)
Als Test- und Verifizierungsumgebung verwenden wir eine lokale Docker-Compose Umgebung, um den operativen Overhead so gering wie möglich zu halten.
Da die KEYCLOAK-Extensions in Java entwickelt werden, sind fundierte und aktuelle Java- sowie Maven-Kenntnisse, sowie der Umgang mit einer Java-IDE unbedingt erforderlich!
Dauer
Jetzt direkt hier buchen:
- 15% Rabatt für alle Teilnehmer:innen eines Unternehmens ab zwei oder mehr Teilnehmer:innen des gleichen Unternehmens.
- Teilnahmezertifikat inklusive!
- Schulungssprache: Englisch
- Schulungsunterlagen: keine
- Mindestteilnehmerzahl: 5 Personen
Wenn die Mindestteilnehmerzahl 7 Tage vor dem jeweiligen Termin nicht erreicht ist, kann die Veranstaltung abgesagt werden. - Muss die Veranstaltung aus krankheitsbedingten Gründen des Trainers kurzfristig abgesagt werden, wird innerhalb von 2 Wochen nach dem ursprünglichen Termin ein alternativer Termin bekanntgegeben und zur Teilnahme angeboten.
- Eine Stornierung seitens des Teilnehmers/Kunden ist ausgeschlossen. Bei Verhinderung des Teilnehmers durch Krankheit, besteht die Möglichkeit der Teilnahme an einem alternativen Termin.
- Zahlungsbedingungen: Vorkasse, der Betrag muss min. 3 Tage vor Veranstaltungsbeginn auf dem Bankkonto des Veranstalters oder beim gewählten Zahlungsdienstleister gutgeschrieben sein, andernfalls kann ein Ausschluss von der Veranstaltung erfolgen.
- Online-Platform: Zoom, jede:r Teilnehmer:in muss selbständig und auf eigene Kosten dafür sorgen, dass die technischen Voraussetzungen zur Teilnahme an einem Zoom-Meeting erfüllt sind und eine Teilnahme an einem Zoom Meeting damit möglich ist. Der Veranstalter leistet hierfür keinen Support! Kann der/die Teilnehmer:in aus technischen Gründen nicht an der Veranstaltung teilnehmen, besteht kein Anspruch auf Rückvergütung/Ersatz!