Zum Hauptinhalt springen

Passwort · API-Schlüssel ändern

Die von Studio verwendeten DB-Konten und AI-Schlüssel haben in allen Installationen denselben Initialwert. Ändern Sie sie einmalig während der Inbetriebnahme und danach nie wieder. Danach müssen Sie sie nicht mehr anfassen.

Das Änderungswerkzeug ist bin/passwd.sh allein. Die drei Produkte Platform, AI und Studio haben denselben Namen und dieselbe Bedienung.

Der Konfigurationsmaster ist /etc/kopens/plantpulse-studio.env allein

Die Geheimnisse dieses Produkts befinden sich in /etc/kopens/plantpulse-studio.env. Nicht im Installationsverzeichnis (/opt/kopens/plantpulse-studio-docker), sondern außerhalb des Repo-Baums, mit Berechtigungen 0600.

Die Datei .env im Installationsverzeichnis-Root ist ein alter Pfad. Niemand liest sie mehr — die Stack wird sich nicht ändern, wenn Sie sie korrigieren.

Vor dem 16.08.2026 schrieb passwd.sh zu /etc/kopens/plantpulse-studio.env, aber compose und die übrigen Skripte lasen .env im Repo-Root. Die Rotation war daher stillschweigend unwirksam, und passwd.sh sagte, dass es erfolgreich war, aber der Stack lief weiterhin mit alten Werten (ANTHROPIC_API_KEY · AI_API_KEY waren in diesem Zustand). Schreiben Sie nicht erneut auf den alten Pfad.


App-Login-Konten sind nicht Gegenstand dieser Anleitung

Verwechseln Sie diese zwei Dinge nicht.

WasWo ändern
App-Login-KontoKonto für die Anmeldung von Benutzern bei StudioIn der App: Einstellungen → Benutzerverwaltung
Infrastruktur · API-SchlüsselGebündeltes PostgreSQL-Konto, AI-SchlüsselDieses Dokumentbin/passwd.sh
Versuchen Sie nicht, App-Konten mit .env zu ändern — sie werden zu toten Werten

Der Studio-Server prüft beim Anmelden in dieser Reihenfolge: ①DB → ②Umgebungsvariablen. Sobald ein Konto in der DB gefunden wird, stoppt er dort, daher hat eine nachträgliche Änderung von STUDIO_LOCAL_USERS in der Umgebungsvariablen keine Wirkung.

App-Konten werden in Einstellungen → Benutzerverwaltung erstellt, ihnen werden Rollen zugewiesen und Passwörter zurückgesetzt. Weitere Informationen finden Sie im Abschnitt Benutzerverwaltung unter Einstellungen (Administrator). Konten mit der Quelle 환경변수 können auf dem Bildschirm nicht geändert oder gelöscht werden.

Das Bootstrap-Konto (STUDIO_LOCAL_USERS) ist ein temporäres Mittel für den ersten Zugriff. Wenn Betriebskonten bereit sind, leeren Sie es und starten Sie neu.


Was kann geändert werden

Sehen Sie sich zuerst die Liste an. Das Ausführen ohne Argumente ist das Gleiche.

cd /opt/kopens/plantpulse-studio-docker
bin/passwd.sh --list

Schlüssel, ID, aktueller Wert (nur erste 3 Zeichen) und Ziel werden zusammen angezeigt, ebenso wie wo sich dieser Wert befindet. Wenn Sie den vollständigen Wert benötigen, verwenden Sie --list --show.

SchlüsselWasWie wird es geändert
PG_PASSWORDGebündeltes PostgreSQLServer-Konto ist das Original — ALTER ROLE (psql)
ANTHROPIC_API_KEYAnthropic-API-SchlüsselDatei — wird beim Starten von agent-server geladen
AI_API_KEYOpenAI-kompatibler API-SchlüsselDatei — wird beim Starten von agent-server geladen

Der Schlüsselname ist exakt der Name der Umgebungsvariablen. Es gibt keine Aliase wie postgres — wenn es Aliase gäbe, müsste man eine separate Tabelle zur Verknüpfung von Namen und Variablen pflegen, und diese Tabelle würde unweigerlich mit der Realität abweichen.

Es ist normal, wenn PG_PASSWORD nicht in der Liste steht

PG_PASSWORD ist Eigentum dieses Produkts nur bei Installationen, die PostgreSQL bündeln (wenn bundled-pg in COMPOSE_PROFILES vorhanden ist). Bei Installationen mit gemeinsamer Platform-PG ist dieses Passwort nicht das Ihre und wird daher weggelassen; stattdessen werden Sie benachrichtigt.

Das PP_* der Platform ist hier auch nicht vorhanden. Es wird wie ein Tippfehler abgelehnt, wenn Sie es übergeben.


Änderung durchführen

Das Weglassen des Werts und die Eingabe über eine Aufforderung ist der empfohlene Weg. Das Passwort bleibt nicht in der ps-Ausgabe oder der Shell-Historie. Es wird zweimal eingegeben, um zu überprüfen, ob sie übereinstimmen.

bin/passwd.sh PG_PASSWORD

Sie können den Wert auch direkt als Argument übergeben.

bin/passwd.sh ANTHROPIC_API_KEY=<new-value>

Wenn Sie mehrere auf einmal übergeben, wird der Neustart zu einem verschmolzen. Verwenden Sie dieses Format während der Inbetriebnahme.

bin/passwd.sh PG_PASSWORD=<new-password> ANTHROPIC_API_KEY=<new-value>

Um nur zu sehen, was sich ändern würde, ohne etwas zu berühren, verwenden Sie --dry-run.

bin/passwd.sh --dry-run PG_PASSWORD=<new-password>

Bei der Ausführung werden zunächst die zu ändernden Elemente und ihre Auswirkungen angezeigt, dann wird eine Bestätigung mit [y/N] eingeholt. Um die Bestätigung in der Automatisierung zu überspringen, verwenden Sie --yes.

Im nicht-interaktiven Modus können Sie den Wert nicht weglassen

Wenn in einer Umgebung ohne Terminal (Skript, Cron) der Wert weggelassen wird, kann keine Aufforderung angezeigt werden und es tritt ein Fehler auf. Übergeben Sie ihn in diesem Fall im Format KEY=<value>.


Was passiert bei der Ausführung

Die Reihenfolge ist festgelegt.

ReihenfolgeAktion
1Da das Server-Konto das Original ist — wenn PG_PASSWORD, werden Konten zuerst in PostgreSQL geändert
2/etc/kopens/plantpulse-studio.env wird mit dem neuen Wert aktualisiert (Berechtigungen 0600 bleiben erhalten)
3docker compose up -d --wait — Container werden neu erstellt, um den neuen Wert zu laden

Die Server-Seite wird zuerst geändert, dann die Datei. Das Umgekehrte würde dazu führen, dass der Server einen alten Wert hat, die Datei aber einen neuen, und bis zum Neustart bleibt die Verbindung unterbrochen.

Während dieser Zeit ist der Studio-Zugriff unterbrochen. Führen Sie dies während eines Wartungsfensters durch.

Bei Ausfall in der Mitte

An welcher StelleZustandZu tun
Phase 1 (PostgreSQL-Kontoänderung)Beendet ohne die Datei zu berührenMit bin/status.sh überprüfen, ob das gebündelte PG läuft, dann erneut ausführen
Phase 3 (Neustart)Datei hat bereits den neuen WertMit bin/status.sh Status überprüfen und Startfehler beheben
Bearbeiten Sie PG_PASSWORD nicht manuell, nachdem Daten gesammelt wurden

Im Bundle-Modus, wenn Sie nur PG_PASSWORD in der Datei ändern, stimmt es nicht mit dem Konto im vorhandenen Datenverzeichnis überein und der Stack startet nicht. Das ist der Grund, warum passwd.sh das Server-Konto zuerst ändert.


Überprüfung

bin/passwd.sh --list

Wenn die ersten 3 Zeichen des aktuellen Werts geändert wurden, wird es widergespiegelt. Die ersten 3 Zeichen bleiben erhalten, um auf einen Blick zu sehen, ob der Standardwert noch derselbe ist.


Verwandte Dokumentation