Technischen Benutzer anlegen¶
Hinweis: In der ODI werden keine technischen Benutzer (d. h. manuell angelegte Keycloak-Benutzer für den API-Zugriff) verwendet. Stattdessen setzen wir auf Service Accounts.
Eine Anleitung zur Einrichtung findet sich hier: Programmatischen API-Zugriff einrichten
Warum Service Accounts statt technische Benutzer?¶
Ein "technischer Benutzer" ist in Keycloak ein reguläres Benutzerkonto, das für maschinellen Zugriff zweckentfremdet wird. Das bringt mehrere Nachteile mit sich:
- Kein geeigneter Grant-Flow: Reguläre Benutzer sind für den interaktiven Login ausgelegt (
authorization_code-Flow). Für automatisierte Prozesse wird derclient_credentials-Flow benötigt, der ohne Benutzerinteraktion auskommt. - Passwort statt Secret: Technische Benutzer authentifizieren sich mit Benutzername und Passwort. Passwörter haben keine eingebaute Rotationsstrategie und sind schwerer zu verwalten als Client Secrets.
- Audit und Nachvollziehbarkeit: Bei Service Accounts ist klar, welcher Client welche Aktion ausgeführt hat. Bei technischen Benutzern ist das schwerer zuzuordnen.
Service Accounts sind in Keycloak der vorgesehene Mechanismus für maschinellen API-Zugriff: Ein Client mit aktiviertem client_credentials-Flow erhält ein eigenes Secret und eigene Rollen — ohne dass ein menschlicher Benutzer involviert sein muss.