Keycloak IAM & SSO

2024-11-27 - 2024-11-28

Keycloak IAM & SSO (Online)

Description

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.

Eine Zusammenfassung gibt dir Niko in diesem Video.

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

Your Trainers

Niko Köbler

Niko Köbler IT-Beratung

Keycloak, IAM

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

All info about training