Keycloak IAM & SSO

2 Tage

Termine und Buchung

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.

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

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