DE10023818A1 - Lizenzmanager - Google Patents

Lizenzmanager

Info

Publication number
DE10023818A1
DE10023818A1 DE10023818A DE10023818A DE10023818A1 DE 10023818 A1 DE10023818 A1 DE 10023818A1 DE 10023818 A DE10023818 A DE 10023818A DE 10023818 A DE10023818 A DE 10023818A DE 10023818 A1 DE10023818 A1 DE 10023818A1
Authority
DE
Germany
Prior art keywords
value points
software modules
wpn
licensing
access authorization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE10023818A
Other languages
English (en)
Inventor
Johannes Birzer
Martin Kiesel
Andreas Hartinger
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE10023818A priority Critical patent/DE10023818A1/de
Priority to EP01936011A priority patent/EP1285322A1/de
Priority to CN01812154.3A priority patent/CN1440524A/zh
Priority to JP2001584999A priority patent/JP2003533813A/ja
Priority to PCT/DE2001/001634 priority patent/WO2001088669A1/de
Priority to US10/276,604 priority patent/US20030188157A1/en
Publication of DE10023818A1 publication Critical patent/DE10023818A1/de
Priority to US11/466,980 priority patent/US20070043675A1/en
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Verfahren zur Lizenzierung und Zugangsautorisierung von Softwarekomponenten bzw. Instanziierungen von Softwareobjekten durch den Erwerb von Wertepunkten (WP, WP1-WPn), wobei jedem Softwaremodul bzw. der Instanziierung eines Moduls eine dedizierte Anzahl von Wertepunkten (WP, WP1-WPn) zugeordnet ist. Die Lizenziierung beruht auf einem Vergleich von erworbenen Wertepunkten (WP, WP1-WPn) (Wertepunkte-Haben) mit den für eine Anwendung benötigten Wertepunkten (WP, WP1-WPn) (Wertepunkte-Soll). Der Vergleich wird durch einen Lizenzmanager durchgeführt, der in verteilten Umgebungen vorteilhaft als mobiler Agent realisiert wird.

Description

Die Erfindung bezieht sich auf ein Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen für indus­ trielle Steuerungen uns/oder Computersysteme.
Es ist heutzutage üblich, die Lizenzierung und Zugangsautori­ sierung von Softwaremodulen explizit an diese Softwarekompo­ nenten zu koppeln. Wenn ein Anwender z. B. das Softwaremodul A dreimal, das Softwaremodul B zweimal und das Softwaremodul C einmal benötigt, dann erhält er von einem Softwarelieferanten eine dedizierte Autorisierung für seinen benötigten und be­ stellten Bedarf in Form von auf die Bestellung abgestimmten Lizenzen. Dies hat den Nachteil, dass bei einem Umtausch von Lizenzen der Lizenzvertrag geändert werden muss und, soweit ein Softwareschutzmechanismus besteht, die darin freigegebe­ nen Lizenzen ebenfalls geändert werden müssen.
Neben dem Kauf einer Lizenz zur Benutzung von Softwarekompo­ nenten besteht auch die Möglichkeit, eine Lizenz zur Benut­ zung von Softwarekomponenten durch einen Leasing-Vertrag zu erwerben (VDI-Nachrichten vom 7.1.2000). Der Vorteil für eine Leasing-Finanzierung liegt darin, dass im Vergleich zum Kauf die Liquidität des Unternehmens geschont wird. Auch sind die Leasing-Raten selbst bilanzneutral. Der Nachteil liegt wie­ derum darin, dass bei Änderungen des Bedarfs an Softwarekom­ ponenten der Leasing-Vertrag geändert werden muss.
Weiterhin ist in der Anmeldung DE 199 50 249.8 bereits vorge­ schlagen worden, für den Softwareschutz der Runtime-Software eines elektronischen Gerätes Funktionsbausteine mit Wertig­ keiten zu versehen. Das hierin beschriebene Vorgehen ist aber auf Runtime-Software beschränkt, dediziert auf die Verwendung von fest definierten Funktionsbausteinen abgestimmt und unterstützt die Anwendung in verteilten Systemen nur unzurei­ chend.
Der Erfindung liegt die Aufgabe zugrunde, einem Benutzer von Softwaremodulen ein einfaches, flexibles und seinen wechseln­ den Anforderungen angepasstes Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen zur Verfü­ gung zu stellen, das insbesondere in verteilten Systemen ein­ gesetzt werden kann.
Gemäß der Erfindung wird diese Aufgabe dadurch gelöst, dass ein Kunde Wertepunkte als Benutzungsberechtigung für die ge­ wünschten Softwaremodule erwirbt, wobei jedem Softwaremodul eine Wertigkeit in Form von Wertepunkten zugeordnet wird und dass eine Autorisierung für den Kunden erfolgt, wenn die An­ zahl der vom Kunden erworbenen Wertepunkte mindestens die Summe der Wertepunkte der aktuell gewünschten Softwaremodule erreicht, wobei von einem Lizenzmanager permanent die aktuel­ le Bilanz zwischen erworbenen und verbrauchten Wertepunkten berechnet und überwacht wird.
Der Begriff Softwaremodul ist im folgenden synonym zu verwen­ den mit Softwareprogramm oder Softwarekomponente.
Ein wesentlicher Vorteil der Erfindung liegt darin, dass ein Kunde nicht einen Lizenzvertrag über die verwendeten Soft­ waremodule und ihre Anzahl abschließt, sondern einen Lizenz­ vertrag über Wertepunkte erwirbt. Innerhalb seiner erworbenen "Wertepunkte-Lizenz" kann der Kunde flexibel und bedarfsori­ entiert die jeweils benötigten Softwaremodule verwenden. Den Softwaremodulen ist anstatt eines Preises eine Wertigkeit in Form von Wertepunkten zugewiesen, wobei jeder Wertepunkt ei­ nen Preis besitzt. Änderungen beim Kunden bezüglich des Be­ darfs oder neuer Softwarekomponenten benötigen keine Änderung des Lizenzvertrages, wenn die Wertigkeit der aktuell benötig­ ten Softwaremodule durch die bereits erworbenen Wertepunkte abgegolten ist. Der Einsatz von Wertepunkten als Lizenzwährung für die Benutzung von Softwaremodulen erleichtert somit die Verwaltung und Lizenzadministration von Software für ein System, aber auch für ein gesamtes Unternehmen enorm. Beson­ ders bei Softwaremodulen mit einer hohen Änderungs- oder Aus­ tauschfrequenz wird durch die Erfindung das Lizenzierungsge­ baren vereinfacht. Auch ermöglicht die Erfindung bei der Li­ zenzierung eine hohe Granularität und leichte Kombinatorik der Softwaremodule. Weiterhin lässt die Erfindung funktions­ neutrale Vorbestellungen zu, d. h. ein Käufer muss sich beim Erwerb einer Lizenz noch nicht auf bestimmte Softwaremodule festlegen sondern er kann eine Anzahl von Wertepunkten, er­ werben und diese für beliebige Softwaremodule einsetzen. Durch die Verwendung von Wertepunkten als Autorisierungswäh­ rung für die Benutzung von Softwaremodulen können vom Kunden Änderungen bezüglich seines Softwarebedarfs befriedigt wer­ den, ohne dass Änderungen des Lizenzvertrages nötig sind. Da­ durch werden zusätzliche Verwaltungs- bzw. Administrations­ vorgänge eingespart. Der Kunde kann somit sozusagen einen Gutschein über eine Anzahl von Wertepunkten erwerben, wobei es ihm erlaubt ist, diese Wertepunkte in Softwaremodule fle­ xibel ein- und umzutauschen. Der Kunde kann somit individuell seine Modullieferung zusammenstellen und muss keine vom Lie­ feranten vorgefertigten Pakete abnehmen.
Eine weiterer Vorteil der Erfindung liegt darin, dass eine Autorisierung des Kunden für die Benutzung der aktuell ge­ wünschten Softwaremodule erfolgt, wenn die Anzahl der vom Kunden bereits erworbenen Wertepunkte mindestens die Summe der Wertepunkte der aktuell gewünschten Softwaremodule er­ reicht. Bei der Benutzung der Softwaremodule muss also nicht überprüft werden, ob eine explizite Lizenzierung der ge­ wünschten Softwaremodule vorliegt, sondern die Benutzungsau­ torisierung für Kunden geschieht über eine einfache Überprü­ fung der Saldo-Summe der Wertepunkte. Dadurch, dass jedem Softwaremodul dediziert Wertepunkte zugeordnet sind, kann sehr leicht ein Vergleich der Summe der Wertepunkte der aktu­ ell gewünschten Softwaremodule mit den aus dem Lizenzvertrag erworbenen Wertepunkten durchgeführt werden. Soweit das Wer­ tepunktekonto des Kunden nicht durch die Summe der Wertepunk­ te der aktuell gewünschten Softwaremodule überschritten wird, ist für den Kunden die Benutzungsautorisierung gegeben.
Dadurch, dass ein Lizenzmanager permanent die aktuelle Anzahl benötigter Wertepunkte erfasst und sie mit den vorhandenen vergleicht, kann für einen Kunden bedarfs- bzw. benutzungsge­ recht abgerechnet werden. Durch den Lizenzmanager können neu erworbene Wertepunkte lizenztechnisch leicht integriert und berücksichtigt werden, aber auch zusätzlich benötigte Werte­ punkte in einer Anwendung lassen sich leicht erkennen. Der Lizenzmanager ermittelt permanent das "Wertepunkte-Soll", d. h. die Summe der Wertepunkte aller aktuell benötigten Soft­ waremodule, und vergleicht sie mit dem "Wertepunkte-Haben", d. h. dem durch die Lizenz erworbenen Gesamtguthaben an Werte­ punkten.
Eine erste vorteilhafte Ausgestaltung der Erfindung liegt darin, dass der Lizenzmanager als mobiler Agent realisiert ist. Dadurch kann das Lizenzierungsverfahren sehr leicht in verteilten Umgebungen eingesetzt werden. Die lizenzierungs­ pflichtigen Softwaremodule können dabei auf Geräten ablaufen, die z. B. über Feldbusanbindungen verbunden sind, aber auch Local Area Network- (LAN) oder Internet- bzw. Intranet-Ver­ bindungen sind möglich.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass vom System die für eine Applikation benötigten Wertepunkte automatisch berechnet werden. Ein Anwender er­ kennt somit sofort, welche Lizenzkosten (in Form von Werte­ punkten) die von ihm gewählte Konfiguration von Softwaremodu­ len, d. h. seine Applikationen verursacht. Die Bestimmung der benötigten Wertepunkte kann vom Lizenzmanager oder z. B. bei industriellen Steuerungen von einer Routine im Engineering- System durchgeführt werden.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass die Wertepunkte über eine Datenleitung oder über ein Internet an die industrielle Steuerungen bzw. an die Com­ putersysteme übertragen werden. Dadurch wird für die Übertra­ gung der Lizenzwährung (Wertepunkte) an den Kunden kein Da­ tenträger oder eine andere Hardware-Komponente benötigt.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass die Wertepunkte auf einem Datenträger zugeführt werden, der sowieso schon für den Betrieb der Steuerung oder der Computeranlage vorhanden ist. Das Handling an der Steue­ rung bzw. am Computersystem wird dadurch erleichtert, aber auch Lagerraum und Lagerkosten werden eingespart.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass die Wertepunkte auf einer Memory-Card der Steue­ rung oder der Computeranlage zugeführt werden. Eine Memory- Card wird üblicherweise ohnehin bei Steuerungsgeräten einge­ setzt und kann in einfacher Weise in den dafür vorgesehenen Schacht eingeschoben werden.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass die Wertepunkte auf einer MMC-Speicherkarte der Steuerung oder der Computeranlage zugeführt werden. MMC- Speicherkarten (das Akronym MMC steht für Multi Media Card) sind aufgrund ihrer Größe und Form als Träger von Informatio­ nen sehr geeignet. MMC-Speicherkarten sind ihrem Aussehen nach vergleichbar mit einer kleinen SIM-Karte, wie sie bei den Handys bekannt sind.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass die Wertepunkte an einer Stelle bzw. in einem Ge­ rät oder an verschiedenen Stellen, d. h. an mehreren Geräten für das gesamte System bzw. für die gesamte Anlage einge­ speist werden. Dadurch wird es einem Kunden z. B. ermöglicht, Lizenzierungsinformationen (Lizenzwährung in Form von Werte­ punkten) für Softwarekomponenten, die das gesamte System bzw. die gesamte Anlage betreffen, an einer einzigen Stelle (z. B. Gerät) und in der gleichen Weise einzubringen. Dadurch wird für einen Kunden das Lizenz-Handling, insbesondere im Hin­ blick auf verteilte Anwendungen und Netzbetrieb, sehr verein­ facht.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass der für die Zugangsautorisierung erforderliche Soll-Ist-Vergleich der Wertepunkte bei der Installation der Softwaremodule stattfindet. D. h., erst wenn ein Kunde seine erworbenen Softwaremodule auf ein Gerät oder eine Anlage in­ stalliert, wird überprüft, ob seine erworbene Wertepunktan­ zahl ausreichend für die gewünschten Softwaremodule ist. Da­ durch, dass erst beim Laden der Softwaremodule auf ein Gerät oder eine Anlage das Wertepunktekonto des Kunden belastet wird, findet die Überprüfung, ob der Kunde autorisiert ist, die Softwaremodule zu verwenden, zu dem Zeitpunkt statt, an dem der Kunde auch wirklich beabsichtigt, die Module zu ver­ wenden. Die Abrechnung der Wertepunkte erfolgt somit für den Kunden bedarfsorientiert.
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass der für die Zugangsautorisierung erforderliche Soll-Ist-Vergleich bei der Nutzung der Softwaremodule statt­ findet. Die Wertepunkte können somit an die Anzahl der Inkar­ nationen bzw. Instanziierungen der Softwaremodule gekoppelt werden. Dadurch ist es möglich, einem Kunden für seine jewei­ ligen Anforderungen benutzungsorientierte Lizenzierungsver­ fahren zur Verfügung zu stellen. Ein Kunde, der ein Software­ modul, für Bewegungssteuerungen z. B. ein Technologiepaket "Positionieren" erwirbt, zahlt nicht im Sinne einer Abrech­ nung von Wertepunkten, wenn er dieses Technologiepaket lädt, sondern er zahlt nur die explizite Nutzung eines Technologie­ objektes dieses Technologiepakets "Positionieren". Das Tech­ nologiepaket "Positionieren" enthält u. a. das Technologieob­ jekt "Positionierachse". Einem Kunden werden die von ihm be­ nötigte Anzahl der Inkarnationen bzw. Instanzen des Technologieobjekts "Positionierachse" oder weiterer Technologieobjek­ te in Rechnung gestellt, d. h. sein Wertepunktekonto wird mit der Anzahl der Inkarnationen bzw. Instanzen der Technologie­ objekte belastet. Durch die inkarnationsbezogene Autorisie­ rung zur Laufzeit wird das Wertepunktekonto eines Kunden nur durch solche Softwaremodule belastet, die er wirklich für seine Anwendungen benötigt und benutzt. Es liegt somit ein sehr fein granularer Abrechnungsmechanismus vor, und ein Kun­ de muss auch nur für benötigte und benutzte Funktionalität bezahlen.
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden erläutert. Dabei zeigen:
Fig. 1 in einer Schemadarstellung Softwaremodule für eine Bewegungssteuerung,
Fig. 2 in einer Schemadarstellung ein Technologiepaket Po­ sitionieren mit enthaltenen Technologieobjekten,
Fig. 3 ein Szenario für die Lizenzierung und Zugangsauto­ risierung von Softwaremodulen auf einem Gerät unter Verwendung von Wertepunkten,
Fig. 4 ein Szenario für die Lizenzierung und Zugangsauto­ risierung von Softwaremodulen für mehrere vernetzte Geräte unter Verwendung von Wertepunkten,
Fig. 5 den inhaltlichen Aufbau einer MMC-Speicherkarte und
Fig. 6 in einer Schemadarstellung die Verbindung von Steu­ erungsgeräten mit einem Server über eine Ethernet- bzw. Internet-Verbindung.
In der Darstellung gemäß Fig. 1 sind beispielhaft Softwaremo­ dule für eine Bewegungssteuerung dargestellt. Eine Bewegungs­ steuerung besteht üblicherweise aus einem Basissystem BS und Softwaremodulen POS (Positionieren), GL (Gleichlauf), KS (Kurvenscheibe), IP (Interpolation), die ein Anwender je nach seinen Anforderungen und Anwendungen bedarfsorientiert erwer­ ben kann. Diese Softwaremodule stellen Technologiepakete für bestimmte Funktionalitäten dar, sie können weitere Technologieobjekte enthalten. In Fig. 1 sind die Softwaremodule der Bewegungssteuerung als Rechtecke schematisch dargestellt. Ein Anwender bzw. Käufer hat die Möglichkeit, zusätzlich zum Ba­ sissystem BS jeweils Softwaremodule (POS) zum Positionieren, (GL) zum Gleichlauf, (KS) für Kurvenscheiben oder (IP) für die Interpolation zu erwerben. Er kann aber auch ein Gesamt­ paket erwerben, das Positionieren, Gleichlauf, Kurvenscheibe und Interpolation in einem einzigen Softwaremodul GP enthält. Neben diesen typischen Funktionalitäten für Bewegungssteue­ rungen kann ein Anwender oder Kunde auch Softwaremodule K (Kunststoff) oder WT (weitere Technologien) zu bestimmten Technologien erwerben. In Fig. 1 ist angedeutet, dass für Be­ wegungssteuerungen, die besonders für die Kunststoffbearbei­ tung eingesetzt werden sollen, die Softwarekomponente K (Kunststoff) erworben werden kann. Weiterhin ist in Fig. 1 dargestellt, dass auch für weitere Technologien jeweils spe­ zifische Softwarekomponenten WT erworben werden können. Allen dargestellten Softwaremodulen ist eine Wertigkeit in Form von Wertepunkten zugeordnet. Innerhalb seiner erworbenen Werte­ punkteanzahl (Lizenzierung) kann ein Anwender die gewünschten Softwaremodule flexibel benutzen. Ein Anwender kann somit sehr einfach durch die Benutzung bestimmter Softwaremodule eine technologische Skalierung seiner Bewegungssteuerung er­ reichen und somit eine bedarfsorientierte Ausprägung für sei­ ne Steuerungsaufgabe erhalten.
Fig. 2 zeigt in einer Schemadarstellung (abgeschrägtes Recht­ eck) beispielhaft das Technologiepaket (TP) "Positionieren". Das Technologiepaket enthält beispielhaft folgende Technolo­ gieobjekte (als Rechtecke dargestellt): Nocke, Externer Ge­ ber, Drehzahlachse, Messtaster und Positionierachse. In einer Anwendung können von einem Anwender jeweils mehrere Inkarna­ tionen oder Instanzen dieser Technologieobjekte verwendet werden.
Die Überprüfung der Benutzungsautorisierung (Check, ob für die gewünschten Softwaremodule ausreichend Wertepunkte beim Kunden vorhanden sind) kann nun bei der Installation, d. h. beim Laden der Technologiepakete erfolgen. Es besteht aber auch die Möglichkeit, die Überprüfung der Benutzungsautori­ sierung bei der Benutzung, d. h. bei der Instanziierung der Technologieobjekte durchzuführen. Wenn nun dem Technologieob­ jekt Drehzahlachse 3 WP zugeordnet sind, benötigt ein Anwen­ der, der in einer Anwendung zwei Instanziierungen des Techno­ logieobjekts Drehzahlachse verwenden will, hierfür 6 WP. Die­ se Möglichkeit der Kopplung der Lizenzierung an die tatsäch­ liche Nutzung von Technologieobjekten ist für die Kunden transparent und flexibel.
Die Darstellung gemäß Fig. 3 zeigt ein Szenario für die Lizen­ zierung und Zugangsautorisierung von Softwaremodulen auf ei­ nem Gerät unter Verwendung von Wertepunkten. Auf dem Gerät G (z. B. eine Bewegungssteuerung) sollen lizenzpflichtige Soft­ waremodule, hier beispielsweise Instanzen von Technologieob­ jekten (dargestellt als kleine Kreise) ablaufen. Das Gerät G ist durch ein Rechteck dargestellt. Dem Gerät G ist auf einer integrierbaren (durch offene Pfeile symbolisiert) MMC-Spei­ cherkarte MMC eine Identifizierungsnummer PIN zugeordnet, welche die Software-Wertigkeit in Form von 25 Wertepunkte (WP) enthält. Die Identifizierungsnummer PIN, welche die Software-Wertigkeit in Form von Wertepunkten enthält, wird durch ein kleines Kreuz symbolisiert. Durch jeweils unter­ schiedlich gemusterte kleine Kreise werden die Instanzen dar­ gestellt, die auf dem Gerät G ablaufen sollen.
In Fig. 3 werden die Softwaremodule als Instanziierungen bzw. Instanzen von Objekten aufgefasst. Durch einen nicht ausge­ füllten Kreis wird eine Positionierachsinstanz dargestellt. Die Wertigkeit einer Positionierachsinstanz beträgt fünf Wer­ tepunkte. Durch einen Kreis mit Schraffierung von links unten nach rechts oben wird eine Gleichlaufachsinstanz dargestellt. Die Wertigkeit einer Gleichlaufachsinstanz beträgt acht Wer­ tepunkte. Auf dem Gerät G sollen 3 Positionierachsinstanzen (benötigen jeweils 5 WP) und eine Gleichlaufinstanz (benötigt 8 WP) ablaufen.
Auf dem Gerät G sind 25 Wertepunkte (WP) vorhanden, die durch die MMC-Speicherkarte eingebracht wurden. Benötigt werden aufgrund der aktuellen Konfiguration allerdings nur 23 Werte­ punkte. Das umrandete Feld rechts oben in Fig. 4 zeigt die be­ nötigten Wertepunkte. Benötigt werden für die drei Positioni­ sierachsinstanzen 3 × 5 WP und für die Gleichlaufachsinstanz 8 WP, d. h. insgesamt 23 WP. Der Anwender darf somit die ge­ wünschte Konstellation (3 Positionierachsinstanzen und eine Gleichlaufachsinstanz) auf dem Gerät G ablaufen lassen.
Ein softwaremäßig realisierter Lizenzmanager überprüft konti­ nuierlich die Soll-Ist-Bilanz an benötigten und vorhandenen Wertepunkten WP. Der Lizenzmanager kann z. B. im Basissystem BS (Fig. 1) der Steuerung integriert sein.
Die Darstellung gemäß Fig. 4 zeigt ein Szenario für die Lizen­ zierung und Zugangsautorisierung von Softwaremodulen für meh­ rere vernetzte Geräte unter Verwendung von Wertepunkten.
Das dargestellte System besteht aus drei vernetzten Geräten G1, G2 und G3, wobei die Geräte durch Rechtecke dargestellt sind und die Vernetzung durch Verknüpfungslinien symbolisiert ist. Jedem Gerät G1-G3 ist auf einer integrierbaren (durch offene Pfeile symbolisiert) MMC-Speicherkarte MMC1-MMC3 ei­ ne Identifizierungsnummer PIN zugeordnet, welche die Soft­ ware-Wertigkeit in Form von Wertepunkten enthält. Im in Fig. 4 dargestellten Szenario enthält MMC1 zehn, MMC2 ebenfalls zehn und MMC3 zwanzig Wertepunkte, die jeweils den Geräten G1-G3 zugeordnet sind. Im Gesamtsystem sind somit vierzig Werte­ punkte vorhanden.
Im Feld in der linken oberen Ecke von Fig. 4 sind die im Sys­ tem vorhandenen Wertepunkte pro Gerät aufgeschlüsselt sowie in ihrer Summe dargestellt. Die Identifizierungsnummer PIN, welche die Software-Wertigkeit in Form von Wertepunkten ent­ hält, wird durch ein kleines Kreuz symbolisiert. Durch je­ weils unterschiedlich gemusterte kleine Kreise werden die Softwaremodule dargestellt, die auf den Geräten G1-G3 ab­ laufen sollen. In Fig. 4 werden die Softwaremodule als Instan­ ziierungen bzw. Instanzen von Objekttypen aufgefasst. Durch einen nicht ausgefüllten Kreis wird eine Positionierachsin­ stanz dargestellt. Die Wertigkeit einer Positionierachsin­ stanz beträgt fünf Wertepunkte. Durch einen Kreis mit Schraf­ fierung von links unten nach rechts oben wird eine Gleich­ laufachsinstanz dargestellt. Die Wertigkeit dieser Gleich­ laufachsinstanz beträgt acht Wertepunkte. Durch einen Kreis mit Schraffur von links oben rechts unten wird eine Gleich­ laufachsinstanz mit Kurvenscheibe dargestellt. Die Wertigkeit dieses Softwaremoduls beträgt zehn Wertepunkte.
Mit einer Identifizierungsnummer PIN werden jeweils die er­ worbenen Wertepunkte (Software-Wertigkeit) verschlüsselt. Die Identifizierungsnummern PIN werden jeweils über MMC-Speicher­ karten MMC1-MMC3, auf denen sie sich befinden, in das Sys­ tem bzw. auf die Geräte G1-G3 eingebracht.
Im Beispiel gemäß Fig. 4 enthält die MMC1-Speicherkarte zehn Wertepunkte, die MMC2-Speicherkarte ebenfalls zehn Wertepunk­ te und die MMC3-Speicherkarte zwanzig Wertepunkte. Im Feld links oben in der Darstellung werden die im System bzw. auf den Geräten vorhandenen Wertepunkte dargestellt, in Summe be­ finden sich also vierzig Wertepunkte im System. Die vorhande­ nen Wertepunkte WP können als Guthaben bzw. als Wertepunkte- Haben betrachtet werden. Im gezeigten Beispiel sind somit ü­ ber die drei MMC-Speicherkärtchen MMC1-MMC3 verteilt insge­ samt vierzig Wertepunkte vorhanden.
Benötigt werden aufgrund der aktuellen Konfiguration aller­ dings nur neununddreißig Wertepunkte, denn Gerät G1 benötigt eine Positionierachsinstanz, d. h. 5 WP und eine Gleichlauf­ achsinstanz, d. h. 8 WP, Gerät G2 benötigt zwei Gleichlaufachsinstanzen, d. h. 2 × 8 WP und Gerät G3 benötigt eine Gleich­ laufachsinstanz mit Kurvenscheibe, d. h. 10 WP. Das Feld rechts oben in der Darstellung zeigt die im System benötigten Wertepunkte, nämlich neununddreißig. Die benötigten Werte­ punkte stellen den Verbrauch bzw. das Wertepunkte-Soll dar. Da insgesamt im System ausreichend Wertepunkte vorhanden sind (vierzig), ist der Betrieb in dieser Konstellation, die neun- unddreißig Wertepunkte erfordert, zulässig und lizenzrecht­ lich in Ordnung. Entscheidend für die Zugangsautorisierung ist die Gesamtsumme der im System befindlichen Wertepunkte.
Der Lizenzmanager führt permanent Buch über die von einer An­ wendung benötigten Wertepunkte WP und vergleicht diese mit den im Gesamtsystem vorhandenen Wertepunkte WP. Bei einer er­ kannten Unterdeckung an Wertepunkten lässt er den Betrieb in der aktuellen Konstellation nicht zu.
Bezüglich lokaler Geräte darf die Zahl der erforderlichen Wertepunkte die Anzahl der vorhandenen Wertepunkte über­ schreiten. Im Beispiel aus Fig. 4 laufen auf dem Gerät G2 zwei Gleichlaufachsen mit sechzehn notwendigen Wertepunkten. Auf der lokalen MMC-Speicherkarte MMC2 für Gerät G2 sind aber nur zehn Wertepunkte hinterlegt. Dieses lokale Defizit an Werte­ punkten wird aber durch die Wertepunkte, die auf den restli­ chen Geräten aufgebracht wurden, kompensiert. Es ist somit auch denkbar, dass einzelnen Geräten gar keine Wertepunkte zugeordnet werden und die diesen Geräten zugewiesenen Soft­ warekomponenten trotzdem ordnungsgemäß lizenzmäßig zum Ablauf gebracht werden können, wenn nur die Gesamtsumme der im Sys­ tem vorhandenen Wertepunkte ausreichend ist. Auch ist es mög­ lich, alle benötigten Wertepunkte nur an einem einzigen Gerät in das System einzubringen.
Darstellung gemäß Fig. 5 zeigt den inhaltlichen Aufbau einer MMC-Speicherkarte. Die MMC-Speicherkarte ist in Form von Blö­ cken aufgeteilt. Der oberste Block ist der Card Identifica­ tion Block, der vom MMC-Speicherkartenhersteller beschrieben wird. Dieser Card Identification Block enthält die eineindeu­ tige Hardwarekennung PSN. Dieser Bereich ist nur noch lesbar (von der Überprüfungs-Software) und nicht mehr kopierbar. In den nächsten Blöcken befinden sich jeweils die Wertepunkte WP1-WPn, Zusatzinformationen ZI1-ZIn (z. B. Informationen bei jeweils unterschiedlichen Lizenzgebern), sowie von einem Verschlüsselungsalgorithmus generierte Identifizierungsnum­ mern PIN1-PINn (für unterschiedliche Lizenzgeber). Weiter­ hin können sich auf einer MMC-Speicherkarte Programme und Da­ ten befinden.
Bis auf den Block, der die eineindeutige Hardwarekennung PSN enthält und der nur lesbar, aber nicht kopierbar ist, sind alle anderen Blöcke einer MMC-Speicherkarte lesbar, schreib­ bar und kopierbar.
Darstellung gemäß Fig. 6 zeigt eine Steuerung, die aus drei vernetzten Geräten G1, G2 und G3 besteht, wobei die Geräte durch Rechtecke dargestellt sind und die Vernetzung durch Verknüpfungslinien symbolisiert ist. Die Steuerung ist z. B. über eine Ethernet- oder Internet-Verbindung mit einem Server S verbunden, der u. a. ein Wertepunktokonto enthält. Über die­ se Ethernet- bzw. Internet-Verbindung können Wertepunkte in die Steuerung zu den Geräten G1-G3 übertragen werden. Der Server S ist auf der rechten Seite von Fig. 6 durch ein Recht­ eck dargestellt.
Durch jeweils unterschiedlich gemusterte kleine Kreise werden die Softwaremodule (in Fig. 6 sind beispielhaft Instanzen von Technologieobjekten) dargestellt, die auf den Geräten G1-G3 ablaufen sollen. Durch einen nicht ausgefüllten Kreis wird eine Positionierachsinstanz dargestellt. Die Wertigkeit einer Positionierachsinstanz beträgt fünf Wertepunkte (5 WP). Durch einen Kreis mit Schraffierung von links unten nach rechts o­ ben wird eine Gleichlaufachsinstanz dargestellt. Die Wertig­ keit dieser Gleichlaufachsinstanz beträgt acht Wertepunkte (8 WP). Durch einen Kreis mit Schraffur von links oben rechts unten wird eine Gleichlaufachsinstanz mit Kurvenscheibe dar­ gestellt, deren Wertigkeit beträgt zehn Wertepunkte (10 WP).
Über die Ethernet- bzw. Internet-Verbindung wurden vom Server S vierzig WP auf die Geräte G1-G3 der Steuerung transfe­ riert. Das Wertepunkte Konto des Servers S weist für Gerät G1 zehn WP, für Gerät G2 ebenfalls zehn WP und für Gerät G3 zwanzig Wertepunkte auf, in Summe stehen der Steuerung somit 40 WP zur Verfügung.
Benötigt werden aufgrund der aktuellen Konfiguration aller­ dings nur neununddreißig Wertepunkte, denn Gerät G1 benötigt eine Positionierachsinstanz, d. h. S WP und eine Gleichlauf­ achsinstanz, d. h. 8 WP, Gerät G2 benötigt zwei Gleichlauf­ achsinstanzen, d. h. 2 × 8 WP und Gerät G3 benötigt eine Gleich­ laufachsinstanz mit Kurvenscheibe, d. h. 10 WP. Das mittige umrandete Feld zeigt die im System benötigten Wertepunkte, nämlich neununddreißig. Die benötigten Wertepunkte stellen den Verbrauch bzw. das Wertepunkte-Soll dar. Da insgesamt im System ausreichend Wertepunkte vorhanden sind (vierzig), ist der Betrieb in dieser Konstellation, die neununddreißig Wer­ tepunkte erfordert, zulässig und lizenzrechtlich in Ordnung. Entscheidend für die Zugangsautorisierung ist die Gesamtsumme der im System befindlichen Wertepunkte.
Bezüglich lokaler Geräte darf die Zahl der erforderlichen Wertepunkte die Anzahl der vorhandenen Wertepunkte über­ schreiten. Im Beispiel aus Fig. 6 laufen auf dem Gerät G2 zwei Gleichlaufachsen mit sechzehn notwendigen Wertepunkten. Im Konto des Servers S sind für Gerät G2 aber nur zehn Werte­ punkte hinterlegt. Dieses lokale Defizit an Wertepunkten wird aber durch die Wertepunkte, die den restlichen Geräten zuge­ ordnet sind, kompensiert. Es ist somit auch denkbar, dass einzelnen Geräten gar keine Wertepunkte zugeordnet werden und die diesen Geräten zugewiesenen Softwaremodule trotzdem ord­ nungsgemäß lizenzmäßig zum Ablauf gebracht werden können, wenn nur die Gesamtsumme der im System vorhandenen Wertepunkte ausreichend ist. Auch ist es möglich, alle für den Betrieb der Steuerung benötigten Wertepunkte WP nur einem einzigen Gerät der Steuerung zuzuordnen.
Auch im Szenario gemäß Fig. 6 überprüft ein softwaremäßig rea­ lisierter Lizenzmanager kontinuierlich die Soll-Ist-Bilanz an benötigten und vorhandenen Wertepunkten WP. Der Lizenzmanager könnte in einem verteilten Betrieb (verteilt z. B. über ein Local Area Network oder über das Internet) als mobiler Agent realisiert werden.

Claims (10)

1. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen für industrielle Steuerungen und/oder Computersysteme, dadurch gekennzeich­ net, dass ein Kunde Wertepunkte (WP, WP1-WPn) als Benut­ zungsberechtigung für die gewünschten Softwaremodule erwirbt, wobei jedem Softwaremodul eine Wertigkeit in Form von Werte­ punkten (WP, WP1-WPn) zugeordnet wird und dass eine Autori­ sierung für den Kunden erfolgt, wenn die Anzahl der vom Kun­ den erworbenen Wertepunkte (WP, WP1-WPn) mindestens die Summe der Wertepunkte (WP, WP1-WPn) der aktuell gewünschten Soft­ waremodule erreicht, wobei von einem Lizenzmanager permanent die aktuelle Bilanz zwischen erworbenen und verbrauchten Wer­ tepunkten (WP, WP1-WPn) berechnet und überwacht wird.
2. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach Anspruch 1, dadurch ge­ kennzeichnet, dass der Lizenzmanager als mobiler Agent realisiert ist.
3. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass vom System die für eine Applikation benötigten Wertepunkte (WP, WP1-WPn) automatisch berechnet werden.
4. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, dass die Wertepunkte (WP, WP1- WPn) über eine Datenleitung oder über ein Internet an die in­ dustrielle Steuerungen bzw. an die Computersysteme übertragen werden.
5. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, dass die Wertepunkte (WP, WP1- WPn) auf einem Datenträger zugeführt werden, der sowieso schon für den Betrieb der Steuerung oder der Computeranlage vorhanden ist.
6. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach Anspruch 1, 2 oder 3, dadurch gekennzeichnet, dass die Wertepunkte (WP, WP1- WPn) auf einer Memory-Card der Steuerung oder der Computeran­ lage zugeführt werden.
7. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen Anspruch 1, 2 oder 3, dadurch gekennzeichnet, dass die Wertepunkte (WP, WP1- WPn) auf einer MMC-Speicherkarte (MMC, MMC1-MMC3) der Steue­ rung oder der Computeranlage zugeführt werden.
8. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass die Wer­ tepunkte (WP, WP1-WPn) an einer Stelle bzw. in einem Gerät (G, G1-G3) oder an verschiedenen Stellen, d. h. an mehreren Geräten (G, G1-G3) für das gesamte System bzw. für die gesam­ te Anlage eingespeist werden.
9. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass der für die Zugangsautorisierung erforderliche Soll-Ist-Vergleich der Wertepunkte (WP, WP1-WPn) bei der Installation der Software­ module stattfindet.
10. Verfahren zur Lizenzierung und/oder Zugangsautorisierung von Softwaremodulen nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass der für die Zugangsautorisierung erforderliche Soll-Ist-Vergleich der Wertepunkte (WP, WP1-WPn) bei der Nutzung der Softwaremodule stattfindet.
DE10023818A 2000-05-15 2000-05-15 Lizenzmanager Ceased DE10023818A1 (de)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE10023818A DE10023818A1 (de) 2000-05-15 2000-05-15 Lizenzmanager
EP01936011A EP1285322A1 (de) 2000-05-15 2001-04-30 Lizenzmanager
CN01812154.3A CN1440524A (zh) 2000-05-15 2001-04-30 许可证管理器
JP2001584999A JP2003533813A (ja) 2000-05-15 2001-04-30 ライセンスマネージャ
PCT/DE2001/001634 WO2001088669A1 (de) 2000-05-15 2001-04-30 Lizenzmanager
US10/276,604 US20030188157A1 (en) 2000-05-15 2001-04-30 License manager
US11/466,980 US20070043675A1 (en) 2000-05-15 2006-08-24 Software license manager

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10023818A DE10023818A1 (de) 2000-05-15 2000-05-15 Lizenzmanager

Publications (1)

Publication Number Publication Date
DE10023818A1 true DE10023818A1 (de) 2001-11-22

Family

ID=7642157

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10023818A Ceased DE10023818A1 (de) 2000-05-15 2000-05-15 Lizenzmanager

Country Status (6)

Country Link
US (1) US20030188157A1 (de)
EP (1) EP1285322A1 (de)
JP (1) JP2003533813A (de)
CN (1) CN1440524A (de)
DE (1) DE10023818A1 (de)
WO (1) WO2001088669A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10352009A1 (de) * 2003-11-07 2005-06-09 Siemens Ag Kraftfahrzeug-Informationssystem mit geschützten Dateien
US7778931B2 (en) 2006-05-26 2010-08-17 Sap Ag Method and a system for securing processing of an order by a mobile agent within a network system
US8001378B2 (en) 2006-05-26 2011-08-16 Sap Ag Method and system for protecting data of a mobile agent within a network system

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10023820B4 (de) * 2000-05-15 2006-10-19 Siemens Ag Software-Schutzmechanismus
CN1293437C (zh) * 2003-12-25 2007-01-03 英业达股份有限公司 软件使用量监控系统及方法
DE102005015113A1 (de) * 2005-04-01 2006-10-05 Siemens Ag Verfahren zur Verwaltung von Nutzungsrechten an elektronischen Datenobjekten durch einen Rechteerwerber
CN101114924B (zh) * 2006-07-24 2010-09-08 华为技术有限公司 软件许可证使用数据的处理方法及处理系统
US8805743B2 (en) * 2006-12-27 2014-08-12 International Business Machines Corporation Tracking, distribution and management of apportionable licenses granted for distributed software products
EP2713301A1 (de) 2012-09-27 2014-04-02 Siemens Aktiengesellschaft Verfahren und System zur Anbindung einer Steuerung für eine Maschine an ein übergeordnetes IT-System
JP6131674B2 (ja) * 2013-03-28 2017-05-24 日本電気株式会社 ライセンス管理装置
US10372104B2 (en) 2015-02-27 2019-08-06 Rockwell Automation Technologies, Inc. Industrial automation control system content protection
EP3067763B1 (de) 2015-03-11 2022-06-29 Siemens Aktiengesellschaft Zuweisung von sensoren an maschinenteile
CN106951739B (zh) * 2017-03-23 2018-10-30 北京深思数盾科技股份有限公司 软件许可管理方法及软件许可锁

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992020021A1 (en) * 1991-05-08 1992-11-12 Digital Equipment Corporation License management system
US5752041A (en) * 1995-12-15 1998-05-12 International Business Machines Corporation Method and system for licensing program management within a distributed data processing system
JP2810033B2 (ja) * 1996-07-08 1998-10-15 村越 弘昌 稼働管理システム及び稼働管理方法
DE19824814C2 (de) * 1998-06-03 2000-06-21 Siemens Ag Einrichtung zur Ermittlung von freizugebenden Funktionen in einer Telekommunikationsanlage
US6957186B1 (en) * 1999-05-27 2005-10-18 Accenture Llp System method and article of manufacture for building, managing, and supporting various components of a system
US7013296B1 (en) * 1999-06-08 2006-03-14 The Trustees Of Columbia University In The City Of New York Using electronic security value units to control access to a resource

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10352009A1 (de) * 2003-11-07 2005-06-09 Siemens Ag Kraftfahrzeug-Informationssystem mit geschützten Dateien
US7778931B2 (en) 2006-05-26 2010-08-17 Sap Ag Method and a system for securing processing of an order by a mobile agent within a network system
US8001378B2 (en) 2006-05-26 2011-08-16 Sap Ag Method and system for protecting data of a mobile agent within a network system

Also Published As

Publication number Publication date
EP1285322A1 (de) 2003-02-26
CN1440524A (zh) 2003-09-03
WO2001088669A1 (de) 2001-11-22
US20030188157A1 (en) 2003-10-02
JP2003533813A (ja) 2003-11-11

Similar Documents

Publication Publication Date Title
DE10155752A1 (de) Lizenzierungsverfahren
DE10023818A1 (de) Lizenzmanager
DE10023827A1 (de) Lizenzierung und Zugangsauthorisierung
DE102006032129A1 (de) Skalierbares Verfahren zur Zugriffssteuerung
DE19612999A1 (de) System zur Sicherung geschützter Software gegen unbefugte Benutzung in Rechnernetzwerken
EP3323076A1 (de) Verfahren und anordnung zum sicheren austausch von konfigurationsdaten einer vorrichtung
EP1164456B1 (de) Software-Schutzmechanismus
WO2018137856A1 (de) Verfahren und vorrichtung zum rechnergestützten erstellen und ausführen einer steuerfunktion
DE60212969T3 (de) Verfahren und vorrichtung zum verfolgen des status eines betriebsmittels in einem system zur verwaltung der benutzung der betriebsmittel
DE19963471A1 (de) Verfahren und Vorrichtung zur Verhinderung von Raubkopien von Computerprogrammen
DE19950249C1 (de) Elektronisches Gerät mit Softwareschutz
EP0739509A1 (de) Anordnung mit master- und slave-einheiten
EP0097621A1 (de) Verfahren zur Verschleierung digitaler Information und Vorrichtung zur Durchführung des Verfahrens
WO2018130426A1 (de) Anonymisierung einer blockkette
EP3707878B1 (de) Iot-computersystem sowie anordnung mit einem solchen iot-computersystem und einem externen system
EP2184705A1 (de) Verfahren, System und Gerät zum Verarbeiten von Rechten
DE69834033T2 (de) Chipkarte mit zählvorrichtung
DE69909118T2 (de) Vorrichtung und verfahren zur sicherung einer integrierten schaltung
EP0966711A1 (de) Mikrocomputer mit einer speicherverwaltungseinheit
DE4332144A1 (de) Verfahren zur Funktionsprüfung signaltechnisch nicht sicherer Speicher für mindestens zweikanalig abgespeicherte Nutzdaten und Einrichtung zur Durchführung des Verfahrens
EP0977160B1 (de) Verfahren und Datenverarbeitungsanordnung zum gesicherten Ausführen von Befehlen
WO2023099064A1 (de) Steuerung eines zugriffs auf ein gerät
DE4201967C2 (de) Verfahren und Anordnung zum Sicherstellen der Integrität von auszudruckenden oder zu stempelnden Daten
DE19753517C2 (de) Rechnernetzwerk
DE102020110548A1 (de) Automatische Kommunikation

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection