Skip to content

Self-Hosting

Keyright selbst hosten

Betreiben Sie Keyright in Ihrer eigenen Infrastruktur — Docker, Kubernetes oder Windows/IIS, gegen Ihr eigenes PostgreSQL, bei Bedarf vollständig netzwerkisoliert (air-gapped). Diese Übersicht behandelt die Architektur und die zwei beweglichen Teile; der Rest des Abschnitts Self-Hosting führt Sie durch Bereitstellung, Konfiguration, Lizenzierung, die Anbindung Ihres Produkts und den Betrieb.

Keyright gibt es in zwei Varianten: verwaltet (wir betreiben es) und selbst gehostet (Sie betreiben es — auf einer einzelnen VM, in einem Kubernetes-Cluster oder in einem vollständig netzwerkisolierten (air-gapped) Netzwerk). Der selbst gehostete Build ist derselbe Build wie der verwaltete Service, sodass jedes SDK, jeder Endpunkt und jedes Verhalten in dieser Dokumentation identisch gilt; die einzigen inaktiven Teile sind die mandantenfähige Betreiberoberfläche und die Abrechnung gehosteter Pläne.

Diese Seite erklärt, was Sie betreiben. Wenn Sie bereit sind, es aufzusetzen, springen Sie zum Schritt-für-Schritt-Bereitstellungsleitfaden.

Der Abschnitt Self-Hosting, der Reihe nach

  1. Übersicht & Architektur — Sie sind hier.
  2. Bereitstellungsleitfaden (Schritt für Schritt) — von null zu einer geprüften, lizenzierten Instanz.
  3. Konfigurationsreferenz — jede Umgebungsvariable, Secrets, White-Label, Datenbank.
  4. Lizenzierung & Editionen — das Fail-closed-Modell, die Testversion, Standard vs. Enterprise.
  5. Ihr Produkt an Ihre Instanz anbinden — richten Sie das SDK Ihrer App auf Ihr eigenes Keyright.
  6. Betrieb & Fehlerbehebung — Skalierung, Backups, Upgrades, Air-Gapped, FAQ.

Architektur

Selbst gehostetes Keyright hat genau zwei bewegliche Teile — eine zustandslose Anwendung und Ihre Datenbank:

Die Apps Ihrer Kundenactivate · validate (ohne Auth)Sie / Ihr TeamAdmin · Dashboard · PortalHTTPSLoad Balancer / Reverse ProxyTLS-Terminierung · leitet an /health weiternur bei > 1 KnotenKeyright-App-Knotenzustandslos · Port 8080Keyright-App-Knotenzustandslos · Port 8080nur App — keine Datenbank enthaltenPostgreSQL 14+Gesamter Zustand — Lizenzen, Aktivierungen, Credits,Audit-Log, KEK-verschlüsselte Signaturschlüssel
Zwei bewegliche Teile: ein oder mehrere zustandslose App-Knoten und das PostgreSQL, auf das Sie sie richten.
  • Die App — ghcr.io/delta1-labs/keyright, ein zustandsloser ASP.NET-Core-Service auf Port 8080. Das Image ist reine App — keine Datenbank enthalten. Es hält zwischen Anfragen keinen Zustand, sodass Sie hinter einem Load Balancer beliebig viele Replikate betreiben können, ohne Session-Affinität.
  • PostgreSQL 14+ — enthält den gesamten Zustand. Sie richten die App mit KEYRIGHT_DB darauf; die App legt ihr Schema beim ersten Start selbst an und migriert es (es gibt kein SQL, das von Hand auszuführen wäre).

Der heiße Pfad, den Ihre Kunden ansprechen (/v1/activate, /v1/validate), ist eine Signaturprüfung plus eine Platzzählung, und die Clients verifizieren Lizenzen zwischen Aktivierungen offline — Sie bekommen also nicht bei jedem App-Start eine Anfrage. Deshalb ist die App-Ebene CPU-leicht, und bei Skalierung geht es in Wirklichkeit um Redundanz und Datenbankkapazität (siehe Betrieb → Skalierung).

Was Sie brauchen, auf einen Blick

  • Eine Container-Laufzeitumgebung — Docker 24+ mit Compose v2 oder Kubernetes 1.24+ mit Helm 3. Oder Windows/IIS mit dem .NET 8 Hosting Bundle (ohne Container).
  • PostgreSQL 14+ (16 empfohlen), UTF-8. Die Bundles können zur Evaluierung eines für Sie starten; für die Produktion verwenden Sie Ihr eigenes verwaltetes/hochverfügbares Postgres.
  • Eine Keyright-Lizenz oder ein Testschlüssel von Delta1 — zum Betrieb erforderlich (Keyright ist fail-closed; siehe Lizenzierung). Kontaktieren Sie den Vertrieb für eine 30-tägige Enterprise-Testversion oder eine bezahlte Lizenz.
  • Ausgehender Internetzugang ist zur Laufzeit nicht erforderlich — Keyright läuft netzwerkisoliert (air-gapped).

Die Editionen, kurz gefasst

EditionLaufzeitFunktionen
Enterprise-Testversion30 TageVoller Enterprise-Funktionsumfang, zum Evaluieren
Standardjährlich oder unbefristetDie vollständige Lizenzierungs-Engine — Offline- + Online-Aktivierung, Node-Locking & Plätze, Entitlements & Tiers, Widerruf, das Self-Service-Portal, Nutzungsmessung, alle SDKs
Enterprisejährlich oder unbefristetAlles aus Standard, plus SSO (SAML/OIDC), White-Label-Branding für Dashboard/Portal und Air-Gapped-Credit-Blöcke

Beide bezahlten Editionen umfassen unbegrenzt viele Lizenzen und Produkte — es ist Ihre Infrastruktur, also keine Mengenobergrenzen. Der vollständige Lebenszyklus (Testversion vs. bezahlt, Kulanzfenster, was bei Ablauf passiert) steht in Lizenzierung & Editionen.


Bereit, es aufzusetzen? Beginnen Sie mit dem Schritt-für-Schritt-Bereitstellungsleitfaden →