gooddeploy
Handbuch · Kapitel 6

Rechte

Jeder Zugangscode hat Rechte je Projekt. So kann eine Kollegin bei einem Kunden alles dürfen und bei einem anderen nur lesen, und dein Kunde kann seine Previews ansehen, ohne live schalten zu können.

Die Rechte

Rechterlaubt
readstatus, ls, inspect, launch, open, logs, env ls, db info und den Passwortschutz anzeigen (protect ohne --env)
deploydeploy, ein neues Projekt anlegen (link, erstes deploy), rm von Previews, laufenden, fehlgeschlagenen oder abgebrochenen Deployments, Umgebungsvariablen setzen und löschen (env add, env rm) und Checks melden (checks report)
read:sensitiveGeheimnisse lesen: Werte der Umgebungsvariablen (env pull) und den Dump der Live-Datenbank (db dump)
promotepromote und rollback
settingsEinstellungen des Projekts, bisher den Passwortschutz setzen und aufheben (protect --env …, protect off --env …)
removerm von Previews und auch von früheren Live-Versionen
adminalles auf dem Projekt, auch projects rm

Dazu gilt:

  • admin umfasst alle anderen Rechte, aber nur auf den Projekten, für die es vergeben ist.
  • Die aktuelle Live-Version lässt sich mit keinem Recht per rm entfernen (siehe Aufräumen).
  • login, logout und whoami gehen mit jedem gültigen Zugangscode; link braucht für ein bestehendes Projekt nur read.

Die Rechte bauen nicht aufeinander auf: Wer promote hat, darf deshalb nicht automatisch deploy. Typisch sind Kombinationen wie:

WerRechte
Kunde, der Previews abnimmtread
Entwickler im Projektread, deploy, promote
Projektleitungzusätzlich settings und remove
Verantwortliche der Agenturadmin

Welche Rechte habe ich?

gooddeploy whoami

zeigt deinen Namen und je Projekt deine Rechte, nach einer Anmeldung per E-Mail (kommt später) auch Adresse, Ablauf der Anmeldung, dein Team und deine weiteren Teams mit deiner Rolle darin, z. B.:

 Anna
  Server      https://api.gooddeploy.de
  E-Mail      anna@agentur.de
  Gültig bis  14.01.2027
  Team        Agentur Nord (owner)
  Projekte    kunde-website lesen, deployen, promoten/zurückrollen

Mit --json kommen dieselben Angaben maschinenlesbar (scopes, projects, grants, nach einer Anmeldung per E-Mail auch userEmail, expiresAt, team und teams). Deine Rechte gelten immer im Team deiner Anmeldung; in einem anderen Team meldest du dich mit gooddeploy login --email … --team <name> an.

Nach einer Anmeldung per E-Mail stehen dort zum Beispiel Team Agentur Nord (owner) und Weitere Teams Kunde Süd (member). Die Rolle sagt, wer im Team welche Verantwortung hat:

  • owner: Wer als Erstes ins Team kam; hat alle Rechte des Teams. Jedes Team hat mindestens einen owner.
  • admin: Hat dieselben Rechte im Team wie ein owner.
  • member: Arbeitet mit den Rechten je Projekt, die whoami darüber zeigt.

Rollen vergibt heute goodDEV; ändern kannst du sie selbst noch nicht (kommt später).

Wenn ein Recht fehlt

Fehlt dir ein Recht, bricht der Befehl mit SCOPE_MISSING ab (Exit-Code 3). Die Meldung nennt genau das fehlende Recht und das Projekt, z. B.:

╭─  FEHLER  ──────────────────────────────────────────╮
│ ✗ Recht "settings" für Projekt kunde-website fehlt. │
╰─────────────────────────────────────────────────────╯
  → Ein Admin kann dir das Recht "settings" auf kunde-website geben; gooddeploy whoami zeigt deine Rechte.
  Code SCOPE_MISSING · Exit 3

Projekte, für die dein Zugangscode gar nicht freigegeben ist, meldet gooddeploy als NOT_FOUND, genau wie Projekte, die es nicht gibt. So verrät die Antwort nicht, welche Projekte andere Kunden haben.

Wer vergibt die Rechte?

  • Heute: goodDEV. Schreib uns, wer welche Rechte auf welchem Projekt braucht; wir richten den Zugangscode ein oder erweitern ihn. Neue Rechte gelten, sobald goodDEV sie eingespielt hat; du musst dich nicht neu anmelden.
  • Später: Du vergibst Rechte selbst im Dashboard und lädst Kolleginnen, Kollegen und Kunden per Einladung ein. Dashboard und Einladungen kommen später.