Zum Inhalt springen
ARD Eventhub
Esc
navigateopen⌘Jpreview
Auf dieser Seite

Benutzer

Benutzerverwaltung für Admins.

Um sich beim Eventhub zu authentifizieren und mit der API zu arbeiten, benötigst du ein gültiges Benutzerkonto. Die Logins sind derzeit von der ARD Core API getrennt, nutzen aber ein ähnliches Verfahren. Diese Seite beschreibt die Verwaltung von Benutzern.

Allow-List

Zur Laufzeit liest der Ingest-Service src/config/users.json (gitignored; in Kubernetes oft als Volume gemountet).

Quellen in Git:

  • users-test.sops.json — verschlüsselte Vorlagen/Quelle für Test/Dev
  • users-prod.sops.json — verschlüsselte Vorlagen/Quelle für Prod
  • users.ci.sops.json — CI-Fixture (age-Key für GitHub Actions, Regel .ci.sops.* in .sops.yaml)

Lokal erzeugen z. B. mit:

just decrypt-key src/config/users-test.sops.json
# bzw. für den Laufzeit-Pfad:
sops decrypt src/config/users-test.sops.json > src/config/users.json

# CI-Fixture (benötigt den CI-age-Private-Key als SOPS_AGE_KEY):
sops decrypt src/config/users.ci.sops.json > src/config/users.json

Jeder Eintrag hat die Form:

{
	"email": "name@example.de",
	"institution": "SWR",
	"institutionId": "urn:ard:institution:hex"
}

E‑Mail-Adressen müssen exakt mit dem Firebase-Login übereinstimmen (kein Trim/Lowercase). Wer in der Datei steht, gilt als aktiv.

Neue Benutzer anlegen

Neue Benutzer können sich nicht selbst registrieren; der Zugang wird über das ARD Online Team gewährt.

  • Öffne die passende users-*.sops.json (just edit-key src/config/users-test.sops.json bzw. users-prod)
  • Prüfe, ob die E‑Mail noch nicht existiert, und füge einen neuen Eintrag mit institution + institutionId hinzu
  • Committe die aktualisierte .sops.json und stelle sicher, dass Deployments users.json bereitstellen (Decrypt oder Mount)
  • Registriere den Benutzer in Firebase: Firebase Console unter BuildAuthentication
    • Add user mit derselben E‑Mail; Passwort kann temporär zufällig sein
    • Danach im Dropdown Reset password auslösen
  • Der Benutzer erhält eine E‑Mail zum Setzen des Passworts und kann anschließend die API nutzen

Benutzer entfernen

  • Prüfe, ob der Benutzer Subscriptions angelegt hat, die eventuell entfernt werden müssen (Pub/Sub und Datastore)
    • Hinweis: Zugriffsrechte für Subscriptions gelten institutionsweit; beim Entfernen eines Benutzers bleiben die Rechte ggf. für die Kollegen bestehen
  • Entferne den Eintrag aus der passenden users-*.sops.json und aktualisiere das gemountete/users.json
  • Entferne anschließend das Benutzerprofil in der Firebase Console