Skip to the content

Keycloak mit eigenem Mapper...

Für interne Zwecke hab' ich nun ein Single-Sign-On System aufgesetzt. Die erste konkrete Anwendung ist die Steuerung des Zugriffs auf unsere Docker Registry (hub.intern.).

Der Zugriff ist derart, dass die Kunden auf die Images Leseberechtigungen haben und ich als Administrator (natürlich :)) auch Schreibberechtigungen. In Docker-Auth: pull und push-Berechtigungen. In Keycloak gibt es bereits Rollen-Mapper, die erweitert werden können. Auf Basis von https://github.com/ieggel/DockerRegistryKeycloakUserNamespaceMapper und https://github.com/lifs-tools/keycloak-docker-role-mapper habe ich nun einen Mappingmechanismus umgesetzt, der genau für diese Konstellation passt.

Der Benutzername der Kunden hat ein Prefix, damit auch Kunden dieser Kunden einen eigenen Benutzerzugang bekommen können.

Kunden dürfen im jeweiligen Repository nur jene Images lesen, die in einer Gruppe abgebildet sind. Die Gruppe heißt bspw. "image_read-THE_NAME_OF_THE_IMAGE" und wenn der Benutzer in dieser Gruppe Mitglied ist, darf er dieses Image lesen.

Sehr einfach zum Umsetzen, allerdings hab' ich keine Mapper gefunden, der genau das umsetzt. Naja, selbst ist der Mann :)

Harald Krottmaier

Kontaktformular

Bitte beschreiben Sie kurz das Thema, dass Sie mit uns besprechen wollen! Wann sind Sie für einen Rückruf erreichbar?

Das Feld "Vorname" wird benötigt
Das Feld "Nachname" wird benötigt.
Bitte geben Sie eine gültige E-Mailadresse ein