KEYnote 45 Deutsch - Frühjahr-/Sommerausgabe 2023 | Page 3

L I C E N S I N G

Software Activation Wizard Beispiele

Hauptziel bei der Lizenzierung von Software sollte die einfache und sichere Bereitstellung von Lizenzen sein .
Das gilt sowohl beim Softwarehersteller , der neue Lizenzen auf seinem zentralen Lizenzserver erstellt , als auch beim Endanwender , der die benötigten Lizenzen auf sein Endsystem überträgt . Bei einer Umgebung , die zumindest von Zeit zu Zeit Zugriff auf Systeme im Internet hat , kann dies sehr einfach und elegant mit einem Software Activation Wizard ( kurz SAW ) realisiert werden . Bei diesem handelt es sich entweder um eine eigenständige Anwendung oder aber um eine zusätzliche Funktionalität in der vom Endanwender eingesetzten Software , die
■ einen initialen Transfer von Lizenzen von CodeMeter License Central auf das lokale System durchführt ,
■ bei Bedarf einen benötigten CmContainer auf dem lokalen System erzeugt oder
■ zyklisch prüft , ob für Ticket oder CmContainer auf CodeMeter License Central Lizenzänderungen vorliegen .
Gateways Für Lizenzprüfungen aus einer Anwendung heraus stellt Wibu-Systems in den CodeMeter License Central Internet Extensions die Gateways-Schnittstellen zur Verfügung . Hierbei handelt es sich um PHP-Skripte , die mit den entsprechenden Parametern aufgerufen werden und im Erfolgsfall die ermittelten Daten im JSON- Format zurückliefern . Daraus ergeben sich die zwei Hauptanforderungen an die Anwendung für die Lizenzprüfung :
■ Kommunikation per HTTPS muss möglich sein
■ JSON-Objekte können interpretiert werden
Zusätzlich muss die Anwendung noch in der Lage sein , mit der lokalen CodeMeter Runtime zu kommunizieren , um die Lizenzdaten auf dem System bereitzustellen .
Software Activation Wizard Samples Um dem Hersteller die Integration der SAW- Funktionalität zu erleichtern , stellt Wibu-Systems auf seiner Homepage im Developer-Bereich zahlreiche Beispielimplementierungen in verschiedenen Programmiersprachen zur Verfügung , die jeweils unterschiedliche Anwendungsfälle abdecken .
CodeMeter License Central
Get Ticketinformation
Get CmContainer Template
Create Update
Confirm Transaction
Allen Implementierungen ist gemeinsam , dass es jeweils ein zentrales Modul gibt , das sich um die Kommunikation mit den Gateways einerseits und der Ansteuerung der CodeMeter Runtime andererseits kümmert . Dieses Modul liegt entweder als Bibliothek oder als einzelne Datei vor und kann in die Software vom Hersteller integriert und nach eigenem Bedarf angepasst werden .
C # Das zentrale Modul , das von allen Beispielen verwendet wird , ist die Bibliothek Wibu-LC-GatewaysAPI .
■ SimpleWizard ist das klassische Beispiel , das lediglich aufzeigt , welche Funktionen für die Aktivierung von Lizenzen aufgerufen werden müssen .
■ Wizard ist eine eigenständige Anwendung , die auf Basis von Tickets oder CmContainern die meisten Operationen für Lizenzmanagement zur Verfügung stellt .
■ AutoUpdate ist ein Beispiel dafür , wie für alle lokal verfügbaren CmContainer geprüft werden kann , ob AutoUpdate-Lizenzen zur Verfügung stehen .
■ SingleTicket demonstriert , wie auf Basis einer in der Lizenz gespeicherten Ticketnummer geprüft werden kann , ob neue Lizenzen bereitgestellt wurden .
■ Renew ist ein einfaches Beispiel , mit dem die Funktionsweise der Renew-Lizenzen für Servicetechniker veranschaulicht wird .
■ Cloud zeigt , wie im Lizenzportal ein neuer Benutzer mitsamt CmCloudContainer angelegt werden kann bzw . wie für einen bestehenden Benutzer der CmCloudContainer auf dem lokalen System zur Verfügung gestellt werden kann .
■ LicensePortalUserTickets zeigt , wie für einen
SAW
Create CmContainer
Create Context
Import Update
Create Context
CodeMeter Runtime
Benutzer alle verfügbaren Tickets vom Lizenzportal abgerufen und anschließend auf neue Lizenzen überprüft werden können .
■ ActivationInformation ist ein kleines Beispiel , das veranschaulicht , wie zusätzliche Informationen aus der Anwendung heraus über aktivierungsspezifische Parameter in eine Lizenz geschrieben werden können .
Java Das zentrale Module , das von allen Beispielen verwendet wird , ist die Bibliothek jaw-core-x . xx . xxx . xxx . jar .
■ ActivateFromTicket ist ein einfaches Beispiel , das aufzeigen soll , wie die Übertragung von Lizenzen vom zentralen Server auf das lokale System funktioniert .
■ DeactivateFromTicket veranschaulicht , wie auf dem lokalen System aktivierte Lizenzen wieder an den zentralen Server zurückgegeben werden können .
C ++ Hier wird eine kleine Kommandozeilen-Anwendung zur Verfügung gestellt , bei der verschiedene Operationen über entsprechende Aufrufparameter angesteuert werden können . Das zentrale Modul ist hierbei die Datei WibuLCGatewayAPI . cpp . Als Bibliothek für die HTTPS-Kommunikation wird libcurl und für die Verarbeitung der JSON-Objekte das Modul jsmn . h verwendet .
Fazit Wenn die Grundvoraussetzungen erfüllt sind , ist eine Integration eines SAW in die Anwendung eines Herstellers kein Hexenwerk . Sollten die hier aufgeführten Programmiersprachen und Beispiele nicht ausreichend sein , stehen unsere Consultants von Professional Services zur Unterstützung bereit .
3