Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Preview:

Citation preview

Lizenzen wie von Zauberhand

aktivieren

Jörg Jans | Professional Services

joerg.jans@wibu.com

Rüdiger Kügler | Professional Services

ruediger.kuegler@wibu.com

Software Activation Wizard

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 1

Überblick

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 2

UserISV

CodeMeter License Central – Ein Ticket-System

2017-06-21 3

ticket + fingerprint

4

license

5

ticket

2

order

1

E-Commerce

ERP/CRM

License Portal

ticket:ABCDE-FGHIJ-KLMNO-PQRST-UVWXY

3

Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

License

Central

Software

Webserver in DMZInhouse IT

Virtual Machine

Internet

Gesamtbild CodeMeter License Central

4

Application-

server

WebserverERP

CRM

Database

Firm Security Box

Web Depot

License Portal

E-Commerce

CRM

(Sales Force)

Browser

Connector

C

C

Database

Customized

Application

G

C

Connector

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

GatewayActivation

Wizard

Grundfunktionen

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 5

Lizenzen aktivieren / reaktivieren

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 6

Demo

Demo2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 7

Schritte bei einer Aktivierung / Reaktivierung (1)

doGetTicketInformation2 aufrufen (Information über das Ticket abrufen)

Lizenzen und Aktionen anzeigen

Aktion auswählen

CmContainerType auswählen

Verfügbare Lizenzen für CmContainerType anzeigen

Lizenzen auswählen

CmContainer auswählen

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 8

Schritte bei einer Aktivierung / Reaktivierung (2)

doGetLicenseInformationFile2 aufrufen (WibuCmLif-Datei herunterladen)

WibuCmLif-Datei importieren

CmContainer auswählen

WibuCmRaC-Datei als Anfrage erzeugen

doGetLicenseUpdate2 aufrufen (WibuCmRaU-Datei herunterladen)

WibuCmRaU-Datei importieren

WibuCmRaC-Datei als Quittung erzeugen

doConfirmLicenseUpdate aufrufen (Quittung hochladen)

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 9

Lizenzen deaktivieren

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 10

Demo

Demo2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 11

Schritte bei einer Deaktivierung (1)

doGetTicketInformation2 aufrufen (Information über das Ticket abrufen)

Lizenzen und Aktionen anzeigen

Aktion auswählen

CmContainer auswählen

Lizenzen auswählen

WibuCmRaC-Datei als Anfrage erzeugen

doGetLicenseUpdate2 aufrufen (WibuCmRaU-Datei herunterladen)

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 12

Schritte bei einer Deaktivierung (2)

WibuCmRaU-Datei importieren

WibuCmRaC-Datei als Quittung erzeugen

doConfirmLicenseUpdate aufrufen (Quittung hochladen)

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 13

Lizenzübertragung fortsetzen

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 14

Demo

Demo2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 15

Schritte bei Lizenzübertragung fortsetzen

doGetTicketInformation2 aufrufen (Information über das Ticket abrufen)

Lizenzen und Aktionen anzeigen

Aktion auswählen

CmContainer und Ticket auswählen

doGetLicenseUpdateAgain2 aufrufen (WibuCmRaU-Datei herunterladen)

WibuCmRaU-Datei importieren (Fehler „schon importiert“ ignorieren)

WibuCmRaC-Datei als Quittung erzeugen

doConfirmLicenseUpdate aufrufen (Quittung hochladen)

…2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 16

Erweiterte Funktionen

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 17

Aktivierung auf einem Lizenz-Server Online

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 18

Cloud ServerAdmin PC

License

Central

License Central +

Gateway

Activation Wizard

CodeMeter Runtime

CodeMeter Runtime

als Server

HTTP POST / JSON

API

API

Aktivierung auf einem Lizenz-Server Offline

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 19

Cloud ServerOnline PC Admin PC

License

Central

License Central +

WebDepot

Browser Activation Wizard

CodeMeter Runtime

CodeMeter Runtime

als Server

HTML

API

API

Flash-

Device

Aktivierung auf einem Arbeitsplatz Offline

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 20

Cloud Online PC Offline PC

License

Central

License Central +

WebDepot

Browser Activation Wizard

CodeMeter Runtime

HTMLFlash-

Device

Custom Interface

Kundenspezifische Erweiterungen von WebDepot und Gateway

Anwendungsfälle:

Bereinigen von Tickets

Aktivierungsdefinierte Parameter

Registrierungsdaten

Individuelle Abhängigkeiten

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 21

Beispiel: Registrierungsdaten verarbeiten

// standard

ICheckBeforeLicenseUpdate($lcaction, $ticketLicenses, $ticket, $serial);

// customization part

function ICheckBeforeLicenseUpdate($lcaction, $firmCode, $ticket, $serial)

{

if(!empty($_REQUEST["regdata"]))

{

$regdata = $_REQUEST["regdata"];

// parse and store regdata in database

}

}

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 22

Aktivierungsdefinierte Parameter

Ein Feld (Product Item Option) wird während der Aktivierung

überschrieben

Ticket für spätere Erweiterung / Änderung / Rückgabe der Lizenz

Ablaufdatum (automatische Verlängerung)

Benutzername für Named User Licenses

Zwei verschiedene Implementierungsoptionen

Automatisch auf dem Server im Gateway

Durch Software Activation Wizard übergeben (kundenspezifische Implementierung)

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 23

Beispiel: Aktivierungsdefinierte Parameter (1)

function getCustomActivationParameters($ticketLicense) {

if (empty($ticketLicense->activationParameterList)) {

return array();

}

$parameterList =

$ticketLicense->activationParameterList->parameter;

if (!is_array($parameterList)) {

$parameterList =

array($ticketLicense->activationParameterList->parameter);

}

$activationParamList = processParameterList($parameterList);

return $activationParamList;

}

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 24

Beispiel: Aktivierungsdefinierte Parameter (2)

function processParameterList($parameterList) {

$processedParamList = array();

foreach ($parameterList as $parameter) {

if ($parameter->name === "Ticket") {

$paramValue = stringToHex(getParam("id"));

} else {

$paramValue = $parameter->initialValue;

}

$activationParam = array(

"name" => $parameter->name,

"value" => $paramValue,

);

$processedParamList[] = $activationParam;

}

return $processedParamList;

}

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 25

Anwendungsfälle

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 26

Abo-Modelle

Kunde schließt ein Abonnement ab

Kunde erhält ein Ticket und aktiviert die Lizenz

Ticket wird (Aktivierungsdefinierter Parameter) in die Lizenz geschrieben

Lizenz wird mit dem gleichen Ticket transparent für den Kunden verlängert

Software Activation Wizard holt die Verlängerungen transparent ab

Nach Kündigung des Abonnements läuft die Lizenz automatisch ab

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 27

Bestellbestätigung mit Aktivierungsschlüssel (Ticket)

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 28

Jetzt AktivierenJetzt Aktivieren

Aktivierung der Software

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 29

LXCYX ZD5FN BRZZSQMGTTCDVB8- - - -

Bitte geben Sie Ihren Aktivierungsschlüssel ein:

Ihre Lizenz wurde erfolgreich aktiviert!

Automatische Verlängerung der Lizenz

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 30

Suche nach Lizenzupdates …

Ihre Lizenz wurde erfolgreich verlängert!

Benutzergebundene Lizenzen aus der Cloud - Anforderungen

Der Anwender soll eine benutzergebundene Lizenz erhalten und diese auf

maximal zwei Geräten einsetzen können.

Die Aktivierung auf einem dritten Gerät soll jederzeit möglich sein, dabei

soll eine der ersten beiden Lizenzen deaktiviert werden.

Der Anwender soll dabei eines der ersten beiden Geräte aussuchen und dies

„inaktiv“ setzen.

Wenn ein inaktives Gerät online ist, soll die Lizenz auf diesem entfernt

werden.

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 31

Benutzergebundene Lizenzen aus der Cloud – Realisierung (1)

Zwei Lizenzen in einem Ticket

Vergabe von hinreichend vielen Reaktivierungen (z.B. eine pro Tag) für

weitere Geräte

Aktivierung auf erstem Gerät

Aktivierung auf zweitem Gerät

Aktivierung auf weiterem Gerät

Anzeige der bereits aktivierten Geräte

Auswahl des Gerätes (der Lizenz), welches deaktiviert werden soll

Reaktivierung mit der gewählten Lizenz

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 32

Benutzergebundene Lizenzen aus der Cloud – Realisierung (2)

Starten der Software auf einem Gerät

Online Abfrage der Lizenz

Prüfung, ob Seriennummer lokal zu einer der beiden Lizenzen passt

Ja: Starten

Nein: Lokalen CmContainer entfernen

Zusätzliche Absicherungen:

Blacklisting des alten CmContainers beim Reaktivieren der Lizenz

Anwendername in der Lizenz speichern (Abgleich mit anderen Services möglich)

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 33

Lizenzen entziehen und sperren

Option 1:

Ticket in der Lizenz speichern

Löschartikel

Prüfung beim Start der Software

Option 2:

Löschartikel

Autoupdate für einen dedizierten CmContainer

Direktes Abholen des Autoupdates beim Start der Software über das Gateway

Autoupdate wird automatisch vor jeder anderen Aktion ausgeführt

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 34

Kostenfreie Software / Registrierung und Lizenzerzeugung

Anforderungen:

Der Anwender soll die Software erst nach erfolgreicher Registrierung nutzen können

Realisierung:

Software Activation Wizard übermittelt Registrierungsdaten

Gateway prüft die Registrierungsdaten und verarbeitet diese

Gateway erzeugt ein Ticket für die kostenfreie Software (White List) transparent im

Hintergrund

Aktivierung wie bei einer Vollversion

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 35

Konfiguration WebDepot

und Gateway

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 36

GatewayWebDepot

Unterschiede WebDepot - Gateway

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 37

Ausgabe als HTML-Seite

Business-Logik

Grundlegende Einstellungen

Benutzerinterface

Einstellungen zum Aussehen des

Interfaces

Ausgabe als JSON-Struktur

Business-Logik

Grundlegende Einstellungen

define("IS_GATEWAY", false); define("IS_GATEWAY", true);

Gemeinsame Eigenschaften

// "selected“ | "all"

define ("ACTIVATION_MODE", "selected");

define ("DEACTIVATION_MODE", "selected");

define ("REACTIVATION_MODE", "selected");

// "none" | "update_pattern" | "replace_pattern"

define("CLEAN_TICKET_PATTERN", "none");

// "none" | "error_log" | "log_file"

define("LOG_SOAP_CALL_DURATION", "error_log");

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 38

Zusammenfassung

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 39

Programmiersprachen

Gateway

PHP

Software Activation Wizard

C#

C/C++

Objective C

Java

Delphi

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 40

Features Software Activation Wizard / Gateway

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 41

Use Case Gateway C# Function

Informationen abrufen doGetTicketInformation2.php JsonCall.GetTicketInformation

Lizenzinformationsdatei abrufen doGetLicenseInformationFile2.php JsonCall.GetLicenseInformationFile

Aktivieren doLicenseUpdate2.php JsonCall.DoActivation

Rückgabe doLicenseUpdate2.php JsonCall.DoDeactivation

Aktivieren ohne vorherige Rückgabe doLicenseUpdate2.php JsonCall.DoReactivation

Automatisches Update doLicenseUpdate2.php JsonCall.DoAutoUpdate

Wiederherstellung auf dem gleichen Rechner doLicenseUpdate2.php JsonCall.DoContainerRestore

Bestätigung eines Updates doConfirmLicenseUpdate.php JsonCall.ConfirmLicenseUpdate

Erneutes Abholen bei Abbruch des Vorgangs doGetLicenseUpdateAgain2.php JsonCall.DoLicenseUpdateAgain

Features Software Activation Wizard / Gateway

2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 42

Use Case C# Function

CmDongles auflisten CodeMeter.GetCmDongles

CmActLicenses auflisten CodeMeter.GetCmActLicenses

Lizenzinformationsdatei importierenCodeMeter.RegisterCmActContainerBuffer

CodeMeter.RegisterCmActContainerFile

WibuCmRaC erstellenCodeMeter.GetRemoteContextBuffer

CodeMeter.GetRemoteContextFile

WibuCmRaU importierenCodeMeter.SetRemoteUpdateBuffer

CodeMeter.SetRemoteUpdateFile

CmActLicense löschen CodeMeter.RemoveCmActContainer

Recommended