Zum Hauptinhalt springen

Konfiguration

Umgebungsvariablen​

Verwendung​

Logto verarbeitet Umgebungsvariablen in folgender Reihenfolge:

  • Systemumgebungsvariablen
  • Die .env-Datei im Projektstamm, die dem dotenv-Format entspricht

Daher werden die Systemumgebungsvariablen die Werte in .env überschreiben.

Variablen​

vorsicht:

Wenn du Logto über npm start im Projektstamm ausführst, wird NODE_ENV immer production sein.

In den Standardwerten wird protocol entweder http oder https entsprechend deiner HTTPS-Konfiguration sein.

SchlüsselStandardwertTypBeschreibung
NODE_ENVundefined'production' | 'test' | undefinedWelche Art von Umgebung, in der Logto läuft.
PORT3001numberDer lokale Port, den Logto abhört.
ADMIN_PORT3002numberDer lokale Port, den die Logto Admin-Konsole abhört.
ADMIN_DISABLE_LOCALHOSTN/Astring | boolean | numberSetze es auf 1 oder true, um den Port für die Admin-Konsole zu deaktivieren. Wenn ADMIN_ENDPOINT nicht gesetzt ist, wird die Admin-Konsole vollständig deaktiviert.
DB_URLN/AstringDer Postgres DSN für die Logto-Datenbank.
HTTPS_CERT_PATHundefinedstring | undefinedSiehe Aktivierung von HTTPS für Details.
HTTPS_KEY_PATHundefinedstring | undefinedEbenso.
TRUST_PROXY_HEADERfalsebooleanEbenso.
ENDPOINT'protocol://localhost:$PORT'stringDu kannst eine URL mit deiner benutzerdefinierten Domain für Online-Tests oder Produktion angeben. Dies wird auch den Wert des OIDC-Ausstelleridentifikators beeinflussen.
ADMIN_ENDPOINT'protocol://localhost:$ADMIN_PORT'stringDu kannst eine URL mit deiner benutzerdefinierten Domain für die Produktion angeben (z. B. ADMIN_ENDPOINT=https://admin.domain.com). Dies wird auch den Wert der Admin-Konsole-Umleitungs-URIs beeinflussen.
CASE_SENSITIVE_USERNAMEtruebooleanGibt an, ob der Benutzername groß-/kleinsensitiv ist. Sei vorsichtig beim Ändern dieses Wertes; Änderungen werden vorhandene Datenbanken nicht automatisch anpassen, was eine manuelle Verwaltung erfordert.

Aktivierung von HTTPS​

Verwendung von Node​

Node unterstützt HTTPS nativ. Gib SOWOHL HTTPS_CERT_PATH als auch HTTPS_KEY_PATH an, um HTTPS über Node zu aktivieren.

HTTPS_CERT_PATH gibt den Pfad zu deinem HTTPS-Zertifikat an, während HTTPS_KEY_PATH den Pfad zu deinem HTTPS-Schlüssel angibt.

Verwendung eines HTTPS-Proxys​

Eine weitere gängige Praxis ist es, einen HTTPS-Proxy vor Node zu haben (z. B. Nginx).

In diesem Fall möchtest du wahrscheinlich TRUST_PROXY_HEADER auf true setzen, was angibt, ob Proxy-Header-Felder vertrauenswürdig sein sollen. Logto wird den Wert an die Koa-App-Einstellungen weitergeben.

Siehe Vertrauen in TLS-Offloading-Proxys für Informationen, wann dieses Feld konfiguriert werden sollte.

Datenbankkonfigurationen​

Das Verwalten zu vieler Umgebungsvariablen ist nicht effizient und flexibel, daher werden die meisten unserer allgemeinen Konfigurationen in der Datenbanktabelle logto_configs gespeichert.

Die Tabelle ist ein einfacher Schlüssel-Wert-Speicher, und der Schlüssel ist wie folgt aufzählbar:

SchlüsselTypBeschreibung
oidc.cookieKeysstring[]Das String-Array der Signatur-Cookie-Schlüssel.
oidc.privateKeysstring[]Das String-Array des privaten Schlüsselinhalts für OIDC JWT-Signierung.

Unterstützte private Schlüsseltypen​

  • EC (P-256, secp256k1, P-384 und P-521 Kurven)
  • RSA
  • OKP (Ed25519, Ed448, X25519, X448 Subtypen)