43
Lizenzen wie von Zauberhand aktivieren Jörg Jans | Professional Services [email protected] Rüdiger Kügler | Professional Services [email protected] Software Activation Wizard 2017-06-21 Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard 1

Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Embed Size (px)

Citation preview

Page 1: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Lizenzen wie von Zauberhand

aktivieren

Jörg Jans | Professional Services

[email protected]

Rüdiger Kügler | Professional Services

[email protected]

Software Activation Wizard

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

Page 2: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Überblick

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

Page 3: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 4: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 5: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Grundfunktionen

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

Page 6: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Lizenzen aktivieren / reaktivieren

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

Page 7: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Demo

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

Page 8: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 9: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 10: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Lizenzen deaktivieren

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

Page 11: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Demo

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

Page 12: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 13: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 14: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Lizenzübertragung fortsetzen

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

Page 15: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Demo

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

Page 16: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 17: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Erweiterte Funktionen

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

Page 18: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 19: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 20: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 21: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 22: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 23: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 24: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 25: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 26: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Anwendungsfälle

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

Page 27: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 28: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Bestellbestätigung mit Aktivierungsschlüssel (Ticket)

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

Page 29: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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!

Page 30: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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!

Page 31: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 32: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 33: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 34: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 35: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 36: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Konfiguration WebDepot

und Gateway

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

Page 37: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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);

Page 38: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 39: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

Zusammenfassung

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

Page 40: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 41: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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

Page 42: Lizenzen wie von Zauberhand aktivieren - Software Activation Wizard

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