Zum Hauptinhalt springen

Self-hosted-Lizenz

Eine Self-hosted-Lizenz ist ein signierter Schlüssel, der die kostenpflichtigen Funktionen eines Logto Self-hosted-Plans auf deiner eigenen Logto OSS-Instanz freischaltet. Ohne eine Lizenz verhält sich Logto OSS wie zuvor.

hinweis:

Lizenzen sind nur für selbst gehostetes Logto OSS vorgesehen. In Logto Cloud sind Funktionen Teil des Tarifs deines Tenants und Lizenz-Endpunkte sind nicht verfügbar.

Was eine Lizenz freischaltet​

Eine Self-hosted Pro-Lizenz schaltet auf deiner Instanz Folgendes frei:

FunktionOhne LizenzMit Lizenz
Logto-Branding ausblenden„Powered by Logto“ wird immer angezeigt.Du kannst es ausblenden.
Bring your UI und eigene CSP-QuellenNicht verfügbar.Lade dein eigenes Anmelde-UI in deinen eigenen Speicher hoch.
Console-Mitglieder und EinladungenNicht verfügbar.Lade Mitglieder zur Console ein und verwalte ihre Rollen unter Tenant-Einstellungen > Mitglieder.
Verpflichtende MFA für ConsoleNur optionale MFA.Verlange, dass jedes Console-Mitglied MFA einrichtet, unter Tenant-Einstellungen > Einstellungen.
SAML-AppsBis zu 3 SAML-Apps.Keine Begrenzung der Anzahl an SAML-Apps.

Funktionen, die nicht in dieser Liste stehen, werden von einer Lizenz nicht beeinflusst.

Lizenz erhalten​

Fordere eine Lizenz über die Self-hosted-Plans-Seite an. Logto stellt dir dann zwei Schlüssel für dieselbe Lizenz zur Verfügung:

  • Produktionsschlüssel: Verwende diesen für die Produktionsbereitstellung, die durch dein Abonnement abgedeckt ist. Sofern dein Bestellformular nichts anderes angibt, deckt jedes Abonnement eine Produktionsbereitstellung ab.
  • Nicht-Produktionsschlüssel: Verwende diesen für Entwicklungs-, Test- und Staging-Bereitstellungen, die dieselbe Produktionsbereitstellung unterstützen. Diese Bereitstellungen dürfen keinen Produktivverkehr bedienen.

Beide Schlüssel schalten dieselben Funktionen und Kontingente frei. Zwei Schlüssel zu haben, berechtigt nicht dazu, zwei Produktionsbereitstellungen zu betreiben. Deine erlaubte Nutzung wird durch die Self-hosted Subscription Terms und dein Bestellformular geregelt.

Der installierte Schlüssel teilt Logto mit, um welche Art von Bereitstellung es sich handelt. Logto prüft dies technisch nicht, installiere also den Schlüssel, der zur Bereitstellung passt.

Lizenz installieren​

Du kannst eine Lizenz in der Console oder über die Management API installieren. In beiden Fällen prüft Logto die Signatur auf deiner Instanz, bevor der Schlüssel gespeichert wird, und lehnt einen ungültigen, manipulierten oder bereits abgelaufenen Schlüssel ab.

In der Console​

  1. Gehe zu Console > Tenant-Einstellungen > Lizenz.
  2. Füge deinen Lizenzschlüssel ein und klicke auf Lizenz installieren.

Nach der Installation zeigt die Seite die Details deiner Lizenz an. Um zu einem anderen Schlüssel zu wechseln, z. B. von einem Nicht-Produktionsschlüssel zu einem Produktionsschlüssel oder zu einem neu ausgestellten Schlüssel, klicke auf Lizenz ersetzen.

Über die Management API​

Sende den Schlüssel an PUT /api/systems/license mit einem Zugangstoken für die Logto Management API:

curl -X PUT 'https://your-logto-endpoint/api/systems/license' \
-H 'Authorization: Bearer <access_token>' \
-H 'Content-Type: application/json' \
-d '{ "license": "<your_license_key>" }'

Eine erfolgreiche Anfrage gibt 204 No Content zurück. Die Anfrage schlägt fehl mit:

  • 400 und license.invalid_key, wenn der Schlüssel nicht von Logto signiert oder verändert wurde.
  • 400 und license.expired_key, wenn der Schlüssel abgelaufen ist. Besorge einen neuen Schlüssel und installiere ihn erneut.
  • 501, wenn dein Logto auf Logto Cloud läuft.

Um zu prüfen, was installiert ist, sende GET /api/systems/license. Es werden Plan, Umgebung, Berechtigungen, Ablaufdatum und Aktualisierungsstatus der Lizenz zurückgegeben. Der Schlüssel selbst wird nie zurückgegeben, und es wird 404 zurückgegeben, wenn keine Lizenz installiert ist. Siehe die Management API-Referenz für das vollständige Anfrage- und Antwortschema.

Mehrere Instanzen​

Die Lizenz wird in deiner Logto-Datenbank gespeichert, daher musst du sie nur einmal für alle Logto-Instanzen installieren, die dieselbe Datenbank verwenden.

Aktualisierung und Kulanzzeitraum​

Logto prüft die Lizenzsignatur lokal, daher ist das Anmelden in deinen Anwendungen nie von einer Verbindung zu Logto abhängig, und eine fehlgeschlagene Aktualisierung blockiert nie den Anmeldeverkehr.

Um Verlängerungen und Kündigungen zu erkennen, meldet sich deine Instanz bei Logto Cloud:

  • Wöchentliche Überprüfung. Wenn die letzte erfolgreiche Aktualisierung mehr als 7 Tage zurückliegt, aktualisiert Logto die Lizenz im Hintergrund als Teil der Bearbeitung einer Anfrage. Bei einem Fehlschlag wird später erneut versucht, höchstens einmal pro Stunde. Eine gerade installierte Lizenz wird sofort aktualisiert.
  • 30 Tage Kulanz. Wenn Aktualisierungen fehlschlagen, z. B. weil deine Instanz das Internet nicht erreichen kann, funktionieren deine Funktionen noch 30 Tage nach der letzten erfolgreichen Aktualisierung weiter. Danach kehrt deine Instanz zu den OSS-Standardeinstellungen zurück.
  • Eine verweigerte Aktualisierung. Wenn Logto die Aktualisierung der Lizenz verweigert, z. B. weil das Abonnement gekündigt wurde, zeigt die Lizenzseite den Grund an. Der Kulanzzeitraum zählt weiterhin ab der letzten erfolgreichen Aktualisierung.

Die Aktualisierung ist eine ausgehende HTTPS-Anfrage von deiner Instanz an https://cloud.logto.io. Wenn deine Instanz hinter einer Firewall läuft, erlaube dieses Ziel.

Was deine Instanz sendet​

Eine Aktualisierungsanfrage enthält nur:

  • Deinen Lizenzschlüssel, der die Lizenz über ihre licenseId identifiziert.
  • Eine deploymentId: ein zufällig generierter Bezeichner, der beim ersten Installieren einer Lizenz erstellt wird. Er wird in deiner Datenbank gespeichert, von jeder Instanz mit dieser Datenbank gemeinsam genutzt und ändert sich nie, auch nicht beim Ersetzen der Lizenz.
  • Die Logto-Version.

Logto sammelt keine Benutzerzahlen, Hostnamen, Domains oder Konfigurationen. Diese Daten werden nur als Referenz gespeichert, z. B. bei einer Verlängerung, und sie werden im Produkt nicht angezeigt oder ausgewertet. Das Verhalten ist Open Source, siehe LicenseReader.ts.

Lizenzablauf​

Eine Lizenz gilt für einen jährlichen Zeitraum, und das Ablaufdatum ist das Ende dieses Zeitraums.

  • Wenn du verlängerst, muss auf deiner Instanz nichts getan werden. Die nächste Aktualisierung nach der Verlängerung ersetzt den installierten Schlüssel durch einen neuen, der ein Jahr später abläuft. Es ist normal, dass die Seite für einige Tage ein gerade abgelaufenes Datum anzeigt, während die Verlängerung übernommen wird; die Funktionen bleiben in dieser Zeit verfügbar.
  • Wenn du nicht verlängerst, wird die Aktualisierung nach Ablauf des Zeitraums verweigert. Die Funktionen bleiben bis zum Ende des 30-tägigen Kulanzzeitraums verfügbar, danach kehrt deine Instanz zu den OSS-Standardeinstellungen zurück, als wäre keine Lizenz installiert. Die Lizenzseite zeigt ein Banner mit einer Erklärung und dem Datum, an dem dies geschieht.
  • Wenn du das Ende des Kulanzzeitraums erreichst, installiere einen neuen Schlüssel, um die Funktionen wieder freizuschalten. Kontaktiere Logto über den Kanal, über den du deine Lizenz erhalten hast, falls du einen benötigst.

Was passiert, wenn Funktionen deaktiviert werden​

Das Zurücksetzen auf die OSS-Standardeinstellungen löscht nichts, was du mit einer Lizenz erstellt hast:

  • Logto-Branding ausblenden: Das „Powered by Logto“-Zeichen wird wieder angezeigt. Deine Einstellung bleibt gespeichert und gilt erneut, wenn später eine Lizenz installiert wird.
  • SAML-Apps: Apps über die ersten 3 hinaus bleiben erhalten, aber du kannst keine neuen erstellen, bis du wieder unter dem Limit bist.
  • Verpflichtende MFA: Du kannst sie immer deaktivieren. Du kannst sie ohne Lizenz nicht erneut aktivieren.
  • Bring your UI, eigene CSP und Console-Einladungen: Du kannst keine neuen Änderungen vornehmen, die die Funktion benötigen, und deine bestehenden Daten bleiben erhalten.

Speicher für Bring your UI einrichten​

In Logto Cloud werden Bring your UI-Assets von Logto gehostet. Auf deiner eigenen Instanz werden sie in einem von dir konfigurierten Objektspeicher abgelegt. Logto entpackt deinen Upload und speichert die Dateien dort und stellt sie von dort bereit.

Setze die experienceBlobsProvider Systemkonfiguration mit derselben JSON-Struktur wie beim Dateispeicher-Provider, zum Beispiel für einen S3-kompatiblen Speicher:

pnpm logto db system set experienceBlobsProvider '{"provider":"S3Storage","accessKeyId":"my-access-key-id","accessSecretKey":"my-secret-access-key","bucket":"logto-sie","endpoint":"https://s3.us-east-2.amazonaws.com"}'

Starte Logto nach der Änderung der Konfiguration neu. Folge dann Bring your UI, um deine Assets in der Console hochzuladen.

Einladungsemails für Console-Mitglieder​

Console-Einladungen werden per E-Mail über den E-Mail-Connector deines Standard-Tenants versendet. Stelle sicher, dass du einen E-Mail-Connector eingerichtet hast, bevor du Mitglieder einlädst.