-- Beschreibung
In diesem Training starten wir mit dem Deployment und der Konfiguration eines Keycloak-Servers. Dabei lernen wir die Grundlagen der OAuth 2, OIDC und JWT Spezifikationen näher kennen und bekommen ein gemeinsames Verständnis der hierbei verwendeten Begriffe, während wir erste Schritte mit Tokens, Claims und Authentifizierungen machen. Gleichzeitig diskutieren wir auch die Best-Practices und Deprecations, die sich im Laufe der Zeit in diesen Spezifikationen ergeben haben.
Danach behandeln wir die Konfiguration von Realms und Clients und auf welche Fallstricke hier zu achten ist. Über das Themeing können wir die Keycloak-UIs an die Unternehmens- oder Projekt-Design-Vorgaben anpassen. Neben dem Keycloak-eigenen User-Management für User, Groups und Roles lernen wir, welche Möglichkeiten noch bestehen, um bestehende Benutzerquellen (z.B. LDAP, o.a.) und andere, externe Identity Provider (z.B. Azure AD oder Social Provider) in und mit Keycloak zu verwenden.
Die Anmelde-Prozesse (Authentication-Flows) stellen ein mächtiges Werkzeug in Keycloak dar. Wir lernen, wie wir sichere und komplexe Authentifizierungsflows entwerfen und konfigurieren. Mittels Required Actions können wir Benutzer auffordern, bestimmte Aktionen durchzuführen oder Credentials zu konfigurieren.
Die für einen zuverlässigen und sicheren Betrieb notwendigen Konfigurationen hinsichtlich (Hochverfügbarkeits-)Cluster, verteiltem Cache, Backup & Recovery lernen wir ebenso kennen, wie auch die wichtigsten Einstellungen, um Sicherheitsbedrohungen abzuwehren bzw. einzudämmen.
-- Agenda
Grundlagen Keycloak Server
- Grundlagen Single-Sign-On (SSO) und Spezifikationen OAuth 2, OpenID Connect (OIDC) und JSON-Web-Token (JWT)
- Keycloak Server Konfiguration und Deployment (inkl. Datenbank)
- Erste Schritte mit Tokens und Claims
- Prinzip und Konfiguration der Keycloak Realms
- Client-Konfigurationen in Keycloak am Beispiel einer verteilten Anwendung
- Themeing der Keycloak-Formulare/-User-Interfaces
Benutzerverwaltung und -quellen
- Benutzer, Gruppen und Rollen in Keycloak
- Klärung der Unterschiede zwischen User Federation / User Storage und Externe Identity Provider
- Konfiguration eines LDAPs als User Federation
- Verwenden von eigenen Benutzer-Datenquellen
- Konfiguration eines externen Identity Providers am Beispiel Azure AD / Microsoft Entra ID
Authentifizierungsflows und Required Actions
- Design und Konfiguration von Authentifizierungsflows
- Erweiterung der Authentifizierungsoptionen mittels Custom Extensions
- Verwendung von Required Actions
- Konfiguration von weiteren Authentifizierungs Policies
Clustering und verteiltes Caching
- Konfiguration des Keycloak-Servers für den Cluster-Betrieb
- Diskussion der verschiedenen Cluster Discovery-Protokolle
- Anpassung / Tuning der (verteilten) Cache-Konfiguration
Weitere Themen
- Versionen & Upgrades
- Backup & Recovery
- Entschärfen von Sicherheitsbedrohungen
-- Dein Nutzen
Lerne den sicheren Umgang mit Authentifizierung und SSO und den damit verbundenen Spezifikationen.
Lerne die Optionen kennen, die ein Keycloak-basiertes SSO und Identity Management Dir bietet.
Lerne, wie Du bestehende Benutzerquellen (weiter-)verwenden kannst.
Lerne, wie sich Benutzer und Clients authentifizieren können.
Lerne den Cluster-Betrieb von Keycloak zu konfigurieren.
Werde sicher im Umgang mit Authentifizierung und OIDC.
-- Zielgruppe
Der Workshop richtet sich an alle Personen aus Entwicklung und Betrieb, die eine Single-Sign-On oder Identity-Managementlösung in ihrem Unternehmen oder Projekt mit Keycloak aufbauen und integrieren möchten.
Technische Anforderungen
Als „Betriebsumgebung“ verwenden wir eine lokale Docker-Compose Umgebung, um den operativen Overhead so gering wie möglich zu halten. Die erforderlichen YAML-Definitionen und Konfigurationsdateien, sowie Keycloak-Erweiterungen für die Trainingsumgebung werden Dir vorab als Download zur Verfügung gestellt.
- Notebook/Laptop
- Texteditor (Notepad++, VS Code, etc.)
- 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)
- Browser
- HTTP-Client (z.B. Insomnia, Postman, o.ä.)
-- Lernziele
OAuth 2, OIDC & JWT Grundlagen & Best-Practices hinsichtlich Grant-Types und Token-Propagation
Keycloak-Konfigurationen Realm, Clients, Users, Groups, Roles
Themeing der Keycloak UIs
Verwendung von User-Federation und Identity Providern
Design von Authentifizierungs-Flows und Verwendung von Required Actions
Cluster-Betrieb und verteiltes Caching
Customizing / Anpassung einer Keycloak-Umgebung an eigene Anforderungen
-- 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
Inhouse Training
Du kannst dieses Training auch als Inhouse-Training exklusiv für dein Team buchen. Bitte nutze dafür unser Anfrage-Formular.
Jetzt anfragen-- Relevante weitere Trainings
ab 2.025 €
iSAQB® Modul WEBSEC
Wenn du tiefer in das Thema Web Security einsteigen möchtest, ist dieses Training genau das Richtige für dich.
OWASP Top Ten in der Praxis
Spüre Schwachstellen deiner Webanwendung auf und lerne, sie zu beheben
auf Anfrage
Lerne die OWASP Top Ten Sicherheitslücken in der Praxis kennen, indem du in die Angreifer:innen-Rolle eintauchst.
Keycloak Extensions entwickeln
Keycloak durch eigene Erweiterungen anpassen
auf Anfrage
Lerne, Keycloak durch eigene Erweiterungen deinen Wünschen anzupassen.