Keycloak installieren

Aus Hostsharing Wiki
Version vom 7. April 2022, 09:59 Uhr von Tim00 (Diskussion | Beiträge) (Beginn der Anleitung)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Allgemein

Keycloak [1] ist eine Open Source Lösung, die ein Single Sign On für verschiedene Anwendungen ermöglicht. Dabei ermöglicht es sowohl die Identitätsverwaltung als auch Zugriffsmanagement.

Technische Details

Keycloak ist in Java geschrieben. Bisher lief es in einem Wildfly Server, aber seit Version 17 (Februar 2022) benutzt es Quarkus, welches ein leichtgewichtiges Java Framework ist.

Es gibt ein Ansible Skript, das die Installationsschritte für Keycloak automatisiert durchführt.

Die Quellen für das Ansible Skript können hier eingesehen werden: [2]

Momentan (April 2022) gibt es noch ein paar Probleme mit der Version 17.0.1, aber mit der Version 17.0.0 scheint es zu funktionieren.

Installation

Was das Ansible Skript macht, lässt sich mit diesen Worten beschreiben:

  • Es wird ein Linux Benutzer eingerichtet.
  • Es wird eine Postgresql Datenbank eingerichtet.
  • Es wird eine Domain aufgeschaltet.
  • Es wird Keycloak als Zip Datei heruntergeladen, z.B. [3], und ins Verzeichnis $HOME/keycloak-17.0.0 entpackt.
  • Dann werden ein paar Konfigurationen an der Datei keycloak/conf/keycloak.conf vorgenommen, um die Postgresql Datenbank einzurichten, und um den Proxymodus auf edge zu setzen und den Hostname zu setzen.
  • Nun wird die Keycloak Instanz initialisiert, mit dem Befehl: keycloak/bin/kc.sh --profile=prod build
  • Es wird Monit konfiguriert, um den Keycloak Service zu starten, der auf einem internen Port lauscht.
  • Im Startskript für Keycloak wird der Admin Benutzer mit Passwort in einer Umgebungsvariable gesetzt, damit der Zugriff auf https://keycloak.example.org/admin möglich ist.
  • Es wird der Apache in der htaccess Datei konfiguriert, damit die aufgeschaltete Domain über Proxy auf den Keycloak Dienst verweist.

Beispiel einer Einrichtung

  • Auf https://keycloak.example.org/admin anmelden.
  • Es soll nicht mit der master Realm gearbeitet werden, sondern sollte eine weitere Realm eingerichtet werden, z.B. "Meine Firma"
  • TODO

Links