Karaf als Identity Provider

Der Apache Karaf bringt einen einfachen Authentifizierungsservice mit, der auch für den Zugriff auf die Karaf-Konsole verwendet wird.

Beim initialen Start des BPCs (bzw. bei jedem Start, wenn nicht vorhanden), wird automatisch eine Backend Connection für den Karaf als IdP angelegt. Diese hat den Modulnamen Karaf (default) und die ID idp_karaf.

Konfiguration

Es wird eine neue Backend-Connection vom Typ identity_provider angelegt. Dort sind folgende Werte zu setzen:

Setting (Key) Gruppe Wert Beschreibung

Module_Name
(module_name)

module

idp-karaf

Einen sprechenden und eindeutigen Namen vergeben

IdentityProvider
(identityProvider)

config

karaf

Den Karaf als Identity Provider festlegen

Datenquelle (JAAS File)

Die Benutzer werden über die Datei KARAF_HOME/etc/users.properties gesteuert.
Die Passwörter werden in der Datei, in dem Format {CRYPT}Passwort-Hash{CRYPT}, als Hashes abgelegt. Aus dem Passwort-Hash kann das Klartextpasswort nicht rekonstruiert werden.

Zum Ändern des Passwortes ist {CRYPT}Passwort-Hash{CRYPT} komplett durch ein Klartextpasswort zu ersetzen. Dabei ist darauf zu achten, dass auch die {CRYPT} Elemente entfernt werden (siehe auch die folgenden Beispiele). Das neue Passwort ist direkt nach dem Speichern der Datei wirksam und wird anschließend automatisch durch einen Hash ersetzt.

users.properties Datei mit Passwort-Hashes
bpcadmin = {CRYPT}XYZ{CRYPT},bpcadmin
virtimo = {CRYPT}XYZ{CRYPT},_g_:admingroup,bpcNoFrontend
_g_\:admingroup = group,admin,manager,viewer,systembundles,ssh
users.properties Datei mit Klartextpasswörtern
bpcadmin = einSehrSicheresPasswort123,bpcadmin
virtimo = einAnderesSehrSicheresPasswort123,_g_:admingroup,bpcNoFrontend
_g_\:admingroup = group,admin,manager,viewer,systembundles,ssh

Wird die Syntax der Datei nicht eingehalten, so ist eine Authentifizierung nicht möglich und führt dann zu einem IDENTITY_PROVIDER_NOT_FOUND Fehler.


Keywords: