Editionen & Lizenzierung
Open-Core-Modell — was im Community-Kern steckt vs. lizenzierte Enterprise-Komponenten, und wie die Lizenzierung funktioniert.
Open Core
kvellman ist Open Core. Die Plattform — inklusive Mehrbenutzer-Konten mit Rollen und dem Freigabe-Workflow — ist quelloffen unter Apache-2.0. Eine kleine Zahl von Komponenten ist lizenzierte Plugins, die sich nur mit gültiger Enterprise-Berechtigung aktivieren.
Community · Apache-2.0
Alles, was Sie für einen produktiven Origin brauchen: die winget-Source-API, Manifeste, Overlays und Upstream-Import, Mehrbenutzer-Konten mit den Rollen Viewer/Reviewer/Admin, der Freigabe-Workflow samt Audit-Log, und Air-Gap-Betrieb.
Enterprise
Ergänzt SSO (OIDC) und MFA (TOTP) als lizenzierte Auth-Plugins sowie die Edge-Node-Komponente für weitere Standorte aus einem lokalen Cache.
| Community | Enterprise | |
|---|---|---|
| Lizenz | Apache-2.0 | Kommerzielles Abo |
| Konten | Mehrbenutzer, Rollen (Viewer/Reviewer/Admin) | Dasselbe, plus SSO (OIDC) & MFA (TOTP) |
| Freigabe-Workflow & Audit-Log | Enthalten | Enthalten |
| Weitere Standorte | — | Edge-Node-Komponente |
| Air-Gap-Betrieb | Enthalten | Enthalten |
Der vollständige Vergleich steht unter Preise.
Wie die Lizenzierung funktioniert
Enterprise-Funktionen werden über eine offline, signaturbasierte Lizenz freigeschaltet — kein Aktivierungsserver, funktioniert also air-gapped:
- Eine Lizenz ist ein vom Hersteller Ed25519-signiertes Token.
- Das Produkt enthält nur den öffentlichen Schlüssel und prüft das Token lokal.
- Das Token nennt Kunde und aktive Berechtigungen (z. B.
sso,mfa) sowie ein Ablaufdatum. - Ein Admin fügt das Token in der UI ein; passende Plugins werden sofort aktiv — ohne Neustart, ohne Internet.
Da die Prüfung lokal erfolgt, kann selbst der vollständige Open-Source-Code keine gültige Lizenz fälschen, solange der private Schlüssel des Herstellers geheim bleibt.
Entwickler-Pakete
Die gemeinsamen, öffentlichen Bausteine liegen auf npm unter Apache-2.0:
@kvellman/winget-contract— der von Origin und Nodes geteilte winget-REST-/Typen-Vertrag.@kvellman/plugin-sdk— Typen zum Bauen von Auth-/Entitlement-Plugins.