App-Lizensierung released

App-Lizensierung released

Jeder App-Hersteller möchte mit seinen Apps Geld verdienen. Geht auch. Ab sofort noch einfacher.

Aber zunächst die harten Fakten: Docker bietet keinen Zugriffsschutz auf App-Container. Und Rancher ermöglich den Zugang zum Container. Also kann jeder sich jeder ScaleIT-Administrator in den Container begeben und dort umsehen und alles tun, was er will. 🙁

Wir haben nun in ScaleIT dennoch einen Weg gefunden, um Apps lizenzierbar zu machen. 🙂

Das Thema Lizensierung ist in ScaleIT sehr wichtig und war auch harte Arbeit, bis wir dahin kamen, wo wir jetzt sind. Das Gesamtthema wird in in zwei Schritten verfügbar:

  • Schritt 1: Mit dem Lizenz-Sidecar können Apps individuell und unabhängig von der Plattform (CE oder EE) in das Lizenzsystem eingebunden werden.
  • Schritt 2: Eine App ermöglicht zentrales Lizenzmanagement.

Diese Woche wurde Schritt 1 verfügbar. Das Lizenz-Sidecar steht für App-Hersteller zur Verfügung.

In den nächsten Tagen werden alle Ondics-Apps auf das neue Lizensierungsverfahren umgestellt.

Grundsätztliches zur App-Lizensierung

Gemäß App-Readiness muss jede App aus dem App-Pool installierbar sein und kostenfrei betrieben werden können. Ziel dabei ist, dass Kunden Apps ausprobieren können, ohne gleich eine kostenpflichtige Lizenz kaufen zu müssen.

Lizensierte Apps benötigen keine Verbindung zum Internet oder zum App-Hersteller, um die Lizenz zu prüfen.

Eine ScaleIT App-Lizenz besteht aus einem Lizenzschlüssel, der einen Lizenzvektor enthält. Ein Lizenzvektor kann mehrere Lizenzparameter enthalten, z.B.

  • App darf nur 4 Wochen betrieben werden
  • Der Speicherplatz für Benutzerdaten darf maximal 10 MB betragen
  • Die App darf nur 400 Sensormessungen durchführen

Ein App-Hersteller kann mehrere Lizenzvektoren für eine App anbieten.

App-Lizenzschlüssel können im ScaleIT I40 App-Store bezogen werden. Sie kosten von unter hundert bis über tausend EUR.Lizenzschlüssel sind immer an eine ScaleIT-Plattform gebunden. Deswegen muss der Kunde beim Lizenzkauf die Plattform-ID seiner ScaleIT-Plattform angeben.

Wenn ein Lizenzschlüssel ungültig wird, fällt die App in den kostenfreien Betriebsmodus zurück.

Was muss ein App-Hersteller tun?

Der App-Hersteller muss zunächst überlegen, welche Lizenzverktoren und Lizenzparameter für die App sinnvoll sind und welche Kunden auch in Verbindung mit dem Preis akzeptieren. Dann gibt es 3 Todo’s:

Todo 1: Ein App-Herstellerbau in seine App eine Logik ein, mit der einzelne Funktionen und Eigenschaften einer App abhängig davon sind, ob die entsprechenden Lizenzparameter zutreffen oder eben nicht.

Todo 2: Zusätzlich muss es seinen Programmcode so gut wie möglich verschlüsseln. Hierzu gibt es verschiedene Möglichkeiten:

  • Auslieferung von Bytecode
  • Binarcodierung von Programmtext
  • Auslieferung von compiliertem Code
  • Auslieferung von verschleietem Programmcode (Obfuscation)

Todo: 3: Das Ondics Lizenz-Sidecar wird in die App mit eingebaut und stellt der App den Lizenzvektor zur Verfügung. Die App kann den Lizenzverktor so oft wie notwenig abfragen. Einer Speicherung des Lizenzvektors im Container oder im Volume ist nicht sinnvoll, weil eine Manipulation sehr leicht möglich wäre.

Was muss ein Kunde tun?

Kunden laden sich Apps aus dem App-Pool (mit dem Rancher-Tool) und installieren wie gewohnt in der ScaleIT-Umgebung. Während der App-Installation kann ein App-Lizenzschlüssel eingegeben werden. Wenn kein Lizenzschlüssel eingegeben wird, startet die App in einem kostenfreien Betriebsmodus mit den Einschränkungen, die der App-Hersteller vorgesehen hat.

Wurde ein Lizenzschlüssel im App-Store gekauft und beim App-Start eingegeben, startet die App in dem Umfang, den der Lizenzschlüssel zulässt. Bei App-Upgrades bleibt der Lizenzschlüssel in der App und gilt auch für die neue Version der App.

Mehr muss der Kunde nicht tun. Alles ganz leicht!

Beispiel aus Kundensicht

Am Beispiel der App Modbuscollector sieht der Benutzer in Bezug auf die App-Lizenz folgendes:

Bei der Installation kann ein Lizenzschlüssel eingegeben werden:

Wird das Feld leer gelassen, startet die App in einem (kosten)freien Modus.

Die Lizenzanzeige in der App ergibt:

Wenn ein Lizenzschlüssel bei der Installation angegeben wird, zeigt die Lizenzanzeige die genauen Lizenzdaten folgendes an:

So einfach!

 

 

 

Fork me on GitHub