Zum Inhalt springen

Lizenz

dnseditor-ee startet nur mit einer gültigen Lizenzdatei. Die Prüfung läuft offline: Die Datei ist mit Ed25519 signiert, die Binärdatei trägt den zugehörigen öffentlichen Schlüssel. Es gibt keinen Aufruf nach außen, keinen Lizenzserver und keine Telemetrie.

VariableVorgabeBedeutung
DNSE_LICENSE_FILE./license.jsonPfad zur Lizenzdatei
DNSE_LICENSE_PUBKEYÖffentlicher Schlüssel als Hex — nur für Entwicklung

In Releases ist der Produktions-Publickey fest einkompiliert (-ldflags "-X main.publicKeyHex=…"). DNSE_LICENSE_PUBKEY existiert für Entwicklung und Tests und übersteuert den eingebauten Schlüssel.

Fehlt die Datei, ist sie abgelaufen oder passt die Signatur nicht, protokolliert der Dienst den Grund und beendet sich mit Exit-Code 1. Ein Start „mit Einschränkungen” gibt es nicht — die Lizenzprüfung ist ein Tor, kein Hinweis.

Der private Schlüssel bleibt beim Herausgeber. Für Entwicklungs- und Testlizenzen dient cmd/licensegen:

Terminal-Fenster
# einmalig: Schlüsselpaar erzeugen (Hex-Ausgabe)
go run ./cmd/licensegen -generate-keys
# Lizenz signieren
go run ./cmd/licensegen \
-key <privater-schlüssel-hex> \
-licensee "Beispiel GmbH" \
-features ee \
-valid-until 2027-12-31 \
-out license.json
FlagBedeutung
-generate-keysneues Ed25519-Schlüsselpaar erzeugen
-keyprivater Schlüssel (Hex) zum Signieren
-licenseeName des Lizenznehmers
-featuresFeature-Flags, kommagetrennt (Vorgabe ee)
-valid-untilAblaufdatum JJJJ-MM-TT
-outAusgabedatei (Vorgabe license.json)

Nach dem Ablaufdatum verweigert der Dienst beim nächsten Start den Betrieb. Eine laufende Instanz wird nicht mitten im Betrieb abgeschaltet — die Erneuerung sollte trotzdem vor dem Datum eingeplant werden, damit ein Neustart nicht überrascht.