CMU - CodeMeter Universal Support Tool

Sie haben auch die Möglichkeit, einige CodeMeter Kontrollzentrum Funktionen alternativ über das kommandozeilenbasierte CodeMeter Universal Support Tool (cmu) ausführen zu lassen.

cmu unterstützt Sie beim:

Auflisten von Inhalten in CmContainern

Erstellen einer einfachen Testumgebung für CmContainer

Durchführen einer Zeitaktualisierung und Erstellen und Import von Lizenzanforderungs- und Lizenzaktualisierungsdateien (Context- und Update-Dateien; *.WibuCmRaC, *.WibuCmRaU)

Unter Windows rufen Sie cmu im Verzeichnis %\Program Files%\CodeMeter\Runtime\bin über den Befehl cmu[32].exe auf.

WIN

Alternativ rufen Sie cmu über den Startmenü-Eintrag "Start | Alle Programme | CodeMeter | Tools | CodeMeter Command Prompt"-Eintrages im Startmenü (win8_logo Drücken der Windows-Taste zum Öffnen des Startmenüs | Eintippen von "CodeMeter Command Prompt" | Drücken der Eingabetaste) auf.

Für die Betriebssysteme MacOS macOS, LINUX Linux ist dieser Befehl im Suchpfad hinterlegt.

Die folgende Liste zeigt vorhandenen cmu-Befehle. Anschließend werden einige Beispiele aufgelistet.

Allgemeine Einstellungen

CodeMeter-Zeit-Server-Einstellungen

Lizenztransfer-Optionen

Named User-Lizenzen

Zusätzliche Optionen

Beispiele

 

Allgemeine Einstellungen

Befehl

Beschreibung

/h oder --help

Zeigt diese Hilfe im Eingabefenster an.

/v oder --version

Zeigt die Versionen aller verfügbaren CodeMeter Komponenten an.

/l oder--list

Listet alle verbundenen CmContainer in Form der Seriennummer auf.

/x oder --list-content

Listet die Inhalte aller verbundenen CmContainer auf.

/k oder --list-server

Listet alle verfügbaren Netzwerk Lizenzserver auf.

/n oder -list-network

Listet Netzwerk-Lizenzinformation für den eigenen Server auf.

Für Begriffserklärungen, z.B. Zugriffsmodi (access modes), sehen Sie bitte die Informationsseiten Lizenz-Monitoring und Begriffe in der Lizenzanzeige für CodeMeter WebAdmin.

 

Listet Netzwerk-Lizenzinformation auch von Remote CodeMeter-Servern auf.

-list-network [--server <servername>|--all-servers] [--serial <serial>] [--firmcode <firmcode> [--productcode <productcode> [--featuremap <featuremap>]]]

 

--all-servers

listet Netzwerk-Lizenzinformation für alle gefundenen Server auf.

--server <servername>

listet Netzwerk-Lizenzinformation für den angegebenen Server <servername> auf.

--serial <serial>
--firmcode <firmcode>
--productcode <productcode>
--featuremap <featuremap>

angegebene Parameter konfigurieren den Ausgabeumfang aufgrund der gewählten Kriterien.

--add-server

Hängt einen Netzwerk-Lizenzserver an das Ende der Server-Suchliste. Als Eingabe wird der Server-Name, die IP-Adresse oder die CMWAN URL erwartet.

Beispiele:

server.domain.local

192.168.0.72

fe80::ea06:88ff:fecf:df6f

https://user:secretpassword@server.domain.local/cmwan

--delete-server

Löscht einen Server-Eintrag von der Server-Suchliste. Erwartet wird ein Eintrag als Server-Name, IP-Adresse oder als CmWAN Url wie gelistet.

-- clear-serversearchlist

Löscht alle Server-Einträge von der Server-Suchliste. Um die automatische Server-Suche zu reaktivieren, benutzen Sie die Option "--add-server 255.255.255.255".

--show-serversearchlist

Zeigt alle Server-Einträge der Server-Suchliste an.

/c <FI> oder --context <FI>

Erzeugt eine Lizenzanforderungsdatei (Context-Datei) für den Lizenzcontainer und das Firm Item <FI> (siehe hier).

Mit der Option --file wird die Ausgabedatei angegeben. Ohne Angabe der Option wird die Standardausgabe verwendet (stdout).

/i oder --import

Importiert eine Lizenzaktualisierungsdatei (Update-Datei) für die verfügbare CodeMeter-Lizenz (siehe hier).

Mit der Option --file wird der Dateiname angegeben. Die Aktualisierung kann für einen CmDongle oder eine CmActLicense Lizenzdatei durchgeführt werden.

/d oder --firmware-update

Startet die Aktualisierung der Firmware eines CmContainers.

/u oder --time-update

Startet die Aktualisierung der zertifizierten Zeit in jedem verbundenem CmContainer.

/e <s> oder --enable <s>

Erlaubt die Aktivierung oder Deaktivierung (Enabling) des ausgewählten CmContainers. Dabei muss das CodeMeter Passwort angegeben werden.

Der erforderliche neue Enabling-Status wird über den Parameter <s> angegeben wobei die Werte s die Werte 1 (disable), 2 (temporär enable), 3 (enable) annehmen kann.

/t <no> oder --test<no>

Startet für jeden verbundenem CmContainer einige einfache Tests. Die Anzahl der Tests wird über den Parameter <no> angegeben.

Dazu muss der CmContainer (temporär) enabled sein.

/vv oder --cmdust

Erstellt einen CmDust Bericht. Dieser Bericht macht Sinn und ist erforderlich bei Anfragen beim Support. Es wird empfohlen einen CmDust Bericht zu erstellen bevor den Wibu-Systems Support kontaktiert.

Mit der Option --file kann das Ergebnis in eine Textdatei geschrieben werden.

--borrow

Erlaubt die Lizenzausleihe von einem Lizenzserver auf den lokalen PC. Sie müssen den Firm Code und den Product Code der Lizenz über die Optionen –firmcode und –productcode angeben. Als zusätzliche Option kann die Feature Map über die Option --featuremap angegeben werden. Darüber hinaus müssen Sie die Seriennummer des Client-CmContainers und den Server-Namen über die Optionen --serial und --server angeben.

--return

Gibt die ausgeliehene Lizenz an den Lizenzserver zurück. Sie müssen den Firm Code und den Product Code der Lizenz über die Optionen --firmcode and –productcode angeben sowie die Seriennummer des Client-CmContainers über die Option --serial.

--borrowlist

Listet die ausgeliehenen Lizenzen für den Client und den Server auf.

--transferlist

Erstellt eine Auflistung der relevanten Daten des Lizenztransfers.

--enabling

Listet die Enabling Status-Zustände aller verbundenen CmContainer auf.

Kombiniert mit dem Befehl -x können aus dem CmContainer-Inhalt zusätzliche Enabling-Informationen angezeigt werden.

--create-io

Wird in Kombination mit der Option --file verwendet und macht Sinn nur im Zusammenhang mit den Hardware-Varianten CmCard/SD oder CmCard/CF. Es wird eine neue codemtr.io Datei erstellt.

Rufen Sie diesen Befehl nur dann auf, wenn die codemtr.io Datei gelöscht ist.

--detect-proxy

Ermittelt die Proxy-Einstellungen des Systems und gibt sie als Standardausgabe (stdout) aus.

Unter LINUX Linux wird die Umgebungsvariable http_proxy als System Proxy betrachtet. https_proxy wird (noch) nicht unterstützt.

--delete-cmact-license

Löscht eine CmActLicense-Lizenz, die sie über die Angabe von --serial angeben.

information_grau_klein26

Eine CmActLicense-Lizenz, die Sie einmal gelöscht haben, kann nicht wieder hergestellt werden.

--set-access-data

Schaltet die Write-Authentifizierung der WebAdmin-Benutzerautorisierung an und speichert das Write-Passwort ab.Option --password zur Spezifizierung.

--set-proxy

Setzt die CodeMeter-Proxy-Konfiguration. Die Angabe besteht aus der IP-Adresse des Proxy Server.

Ein vom Standard-Port (80) abweichender Port kann über die Option --port gefolgt von der Port-Nummer angegeben werden.

Eine Benutzerauthentifizierung kann über die Option --username <Benutzername> --password <Passwort> gesetzt werden.

Um die Authentifizierung zu entfernen, wird die Option --username gefolgt von "" benötigt.

--use-system-proxy

verwendet beim Setzen des Proxys den systemweit gesetzten Proxy.
Im Profiling bzw. der server.ini-Datei wird damit der Eintrag UseSystemProxy auf einen Wert von 1 gesetzt.
Der Eintrag besitzt den Wert 0, wenn --set-proxy verwendet wird.

Unter LINUX Linux wird die Umgebungsvariable http_proxy als System Proxy betrachtet. https_proxy wird (noch) nicht unterstützt.

Beispiele:

cmu --set-proxy proxy.firma.de --username m_mustermann --password meinPasswort --port 90

cmu --set-proxy proxy.firma.de --username ""

--reset-access-data

Löscht beide Passwörter (Read- und Write-Passwort) und stellt den Standard her (keine Read-Authentifizierung, keine Write-Authentifizierung). Ausschließlich lokaler Zugriff ist gesetzt.

--device-id

Setzt beim Importieren von *.WibuCmLiF-Dateien (--import) mit dem Bindungsschema "Binding Extension" diesen Parameter.

Die Angabe der device-id erfolgt als 128 Hexziffern mit vorangestelltem "0x".

--hid

Setzt den USB Kommunikationsstandard auf die Human Interface Device (HID) Klassenspezifikation.

Kürzel für --set-config-disk HidCommunication.

Kann mit oder ohne Angabe einer Seriennummer über die Option --serial verwendet werden.

Ohne Angabe wird der Befehl für alle angeschlossenen CmDongles ausgeführt.

--msd

Setzt den USB Kommunikationsstandard auf die Mass Storage Device (MSD) Klassenspezifikation.

Kürzel für --set-config-disk MsdCommunication.

Kann mit oder ohne Angabe einer Seriennummer über die Option --serial verwendet werden.

Ohne Angabe wird der Befehl für alle angeschlossenen CmDongles ausgeführt.

CodeMeter Zeit-Server-Einstellungen

information_weiss_klein26

Bitte beachten Sie, dass hier ausschließlich die Angabe von Wibu-Systems CodeMeter-Zeit-Servern zulässig ist.

Sie können hier keine eigenen NTP-Zeit-Server (Network Time Protocol) angeben, da diese Zeit-Synchronisierung keine zertifizierte Uhrzeit sicherstellt, die zum Beispiel beim Abholen und der nachfolgenden Gültigkeit von zeitbezogenen Lizenzen eine wichtige Rolle spielt.

--add-timeserver

Hängt einen zusätzlichen CodeMeter Zeit-Server an die Zeit-Server-Liste. Erforderlich ist die Angabe des Server-Namens oder die IP-Adresse (IPv5 or IPv6).

--delete-timeserver

Löscht einen einzelnen CodeMeter Zeit-Server von der Zeit-Server-Liste. Erforderlich ist die Angabe des Server-Namens oder die IP-Adresse (IPv5 or IPv6).

--clear-timeserver-list

Entfernt alle Einträge der CodeMeter Zeit-Server-Liste.

--set-timeserver-default

Setzt die CodeMeter Zeit-Server-Einstellungen auf Standard-Parameter:

CodeMeter Zeit-Server: cmtime.codemeter.com, cmtime.codemeter.de, cmtime.codemeter.us

Maximale Wartezeit (time out): 20 Sekunden

Protokoll: http

--show-timeserver-info

Zeigt die Einträge der CodeMeter Zeit-Server-Liste.

--set-timeserver-timeout

Setzt die Time Out-Zeit (maximale Wartezeit) der CodeMeter Zeit-Server in Sekunden.

Der Wertebereich reicht von 1 und 120. Standardwert beträgt 20 Sekunden.

--set-timeserver-protocol

Setzt eines der Protokolle HTTP oder HTTPS für CodeMeter Zeit-Server.

Lizenztransfer-Optionen

Sämtliche Aufrufe, die im CodeMeter Kern API für den Lizenztransfer existieren, können auch mit cmu explizit aufgerufen werden. Dabei werden die jeweiligen Dateien benutzt (WibuCmLiF/WibuCmRaC/WibuCmRaU). Die folgenden cmu-Aufrufe bestehen:

Befehl

Beschreibung

--create-lt-context <parameters>

Erstellt eine Lizenztransfer-Anforderungsdatei.

Wird mit --lt-push Parametern verwendet, um den Transfermodus anzugeben, Wird der Parameter ausgelassen, geschieht eine Lizenzaktualisierung mit der Firm Security Box (FSB).

Zusätzliche Parameter:

--lt-request-file <file>

Pflicht-Parameter.

Spezifiziert die Datei <file>, in die das Ergebnis der Anforderungsdatei geschrieben werden soll.

--lt-context-file <file>

Spezifiziert die Datei <file>, die die zu erzeugende Anforderungsdatei enthält.

--serial <serial> or -s <serial>

Wählt den CmContainer mit der spezifizierten Serial Number.

--firmcode <fc>

Setzt den Firm Code der zu transferierenden Lizenz.

--productcode <pc>

Setzt den Product Code der zu transferierenden Lizenz.

--create-lt-update <parameters>

Erstellt eine Lizenztransfer-Aktualisierungsdatei.

Zusätzliche Parameter:

--lt-move-licenses <licenses>

Die angegebene Anzahl an Lizenzen wird transferiert.

--lt-borrow-local-license <expiration time>

Ausleihende als <JJJJ>-<MM>-<TT>[T<ss>:<mm>:<sec>] (eine Lizenz wird für den angegebenen Zeitraum transferiert).

--lt-renewborrow <expiration time>

Die zeitliche Gültigkeit einer bereits ausgeliehenen Lizenz wird ausgeweitet.

--lt-lt-return

Gibt die Lizenz zurück, die mit --lt-move-* oder --lt-borrow-* transferriert wurde.

lt-history-index <index>

Wiederholt den Transfer für das selbe Ziel ohne dafür zusätzliche Lizenzen oder Einheiten zu verbrauchen.

Zusätzliche erforderliche Parameter:

--lt-request-file <file>

Pflicht-Parameter.

Spezifiziert die Datei <file>, die die zu transferierende Anforderungsdatei enthält.

--lt-update-file <file>

Pflicht-Parameter.

Spezifiziert die Datei <file>, in die das Ergebnis des Lizenztransfers geschrieben werden soll.

--serial <serial> or -s <serial>

Wählt den CmContainer mit der spezifizierten Serial Number.

--firmcode <fc>

Setzt den Firm Code der zu transferierenden Lizenz.

--productcode <pc>

Setzt den Product Code der zu transferierenden Lizenz.

Zusätzliche optionale Parameter:

--lt-feature-code <number>

Spezifiziert den Feature Code <number>. Die Standardeingabe für <number> ist dezimal außer die Eingabe beginnt mit 0x oder 0X.

--lt-product-ref <number>

Spezifiziert die Product Item Reference <number>. Die Standardeingabe für <number> ist dezimal außer die Eingabe beginnt mit 0x oder 0X.

--import-lt-update <parameters>

Aktualisiert den Lizenztransfer auf der Empfänger- (Ziel-) Seite.

Wird mit --lt-push oder --lt-return Parametern verwendet, um den Transfermodus anzugeben.

Zusätzliche Parameter:

--lt-update-file <file>

Pflicht-Parameter.

Spezifiziert die Datei <file>, in die das Ergebnis der Lizenztransferaktualisierung geschrieben werden soll.

--serial <serial> or -s <serial>

Wählt optional den CmContainer mit der spezifizierten Serial Number.

--firmcode <fc>

Setzt optional den Firm Code der zu transferierenden Lizenz.

--productcode <pc>

Setzt den Product Code der zu transferierenden Lizenz (optional, nur mit --firmcode).

--create-lt-receipt <parameters>

Erstellt die Signatur mit einem definierten Private Key and gibt eine Quittung zurück.

Zusätzliche Parameter:

--lt-receipt-file <file>

Pflicht-Parameter.

Spezifiziert die Datei <file>, in die die Quittung transferiert wird.

--serial <serial> or -s <serial>

wählt den CmContainer mit der spezifizierten Serial Number.

--firmcode <fc>

Setzt den Firm Code der zu transferierenden Lizenz.

--productcode <pc>

Setzt den Product Code der zu transferierenden Lizenz.

--import-lt-receipt <parameters>

Prüft die Quittung mit einem definierten Public Key, um die Transaktion zu validieren.

Zusätzliche Parameter:

--lt-receipt-file <file>

Pflicht-Parameter..

Spezifiziert die Datei <file>, aus der die Daten transferiert werden,

--serial <serial> or -s <serial>

Wählt den CmContainer mit der spezifizierten Serial Number.

--firmcode <fc>

Setzt den Firm Code der zu transferierenden Lizenz..

--productcode <pc>

Setzt den Product Code der zu transferierenden Lizenz.

--lt-cleanup <parameters>

Mögliche Aufräumoptionen

 

--deleted

Säubert gelöschte Lizenzen.

--disabled

Säubert deaktivierte Lizenzen (gefährlich).

--hiddenhistory

Säubert die Historie angegebener Product Items.

--container

Säubert den kompletten Container (gefährlich).

 

Zusätzliche Parameter:

--serial <serial> or -s <serial>

Wählt den CmContainer mit der spezifizierten Serial Number.

--firmcode <fc>

Wählt den Firm Code der zu säubernden Lizenz.

--productcode <pc>

Wählt den Product Code der zu säubernden Lizenz.

--lt-product-ref <number>

Spezifiziert die Product Item Reference <number>. Die Standardeingabe für <number> ist dezimal außer die Eingabe beginnt mit 0x oder 0X.

Erstellen und Importieren einer Namensliste benannter Nutzer (Named User)

Um das Zugreifen auf Lizenzen auf sogenannte Named User (benannten Benutzer) zu beschränken, können externe Namelist-Dateien verwendet werden. Dieser Prozess erfolgt in zwei Schritten:

1.Erstellen der Namelist-Datei

Eine Namelist-Datei umfasst eine Liste autorisierter Nutzer in Klartext-Einträgen und muss einem JSON-Format entsprechen. Das Format wird von Wibu-Systems vorgegeben.

2.Erforderliches Importieren der Namelist-Datei

Cmu wandelt dabei die Klartext-Einträge der Namelist-Datei in eine Liste von Hash-Werten um.

achtung

Nach dem Import und dem Umwandeln der Klartext-Einträge in Hash-Werte durch cmu können die Hash-Werte nicht zurück in die Original-Klartext-Einträge exportiert werden: eine Wiederherstellung ist in keinem Fall möglich.

Sie sind somit für das Sichern der Daten selbst verantwortlich!

Erstellen einer Namensliste

Zur Erstellung der Namelist-Datei benötigen Sie vom Software-Hersteller Informationen über:

den verwendeten Firm Code,

die JSON-Format-Version sowie

die eindeutige Kennung der Namelist-Datei (NamelistId).

Für eine Namelist-Datei gilt:

Es gibt eine bearbeit- und erweiterbare Formatversion.

Es ist möglich, die Namelist-Datei zu ändern, ohne CodeMeter neu starten zu müssen.
Es kann jederzeit ohne Neustart eine geänderte Namelist-Datei importiert werden, die dann Gültigkeit erlangt, d.h. aber nicht, dass ein Ändern der Datei in CodeMeter selbst möglich ist.

Aus Sicherheitsgründen werden keine Klartext-Einträge im Speicher gehalten.

Die Datei ist über NameListId und Firm Code einem oder mehreren Product Items zuordenbar.

Groß- und Kleinschreibung: Über "IgnoreCase": true werden die Namen vor der Hash-Erzeugung zuerst in Kleinschreibung konvertiert.
Derzeit werden über diesen Eintrag nur ASCII-Zeichen beeinflusst.

Es sind maximal 5000 benannte Nutzer pro Namelist-Datei erlaubt.

CodeMeter verwendet maximal 250 Namelist-Dateien.

Es ist möglich Nutzer mehrfach in die Namelist-Datei einzufügen, wobei insgesamt die Häufigkeit, die Position des Eintrages und die Lizenzanzahl (License Quantity) Berücksichtigung finden und eine Steuerung zulassen.

Bei einer Lizenzanzahl n und einer Anzahl von m Einträgen gilt:

Ist die Anzahl der Einträge m größer als die Anzahl n der verfügbaren Lizenzen, werden nur die ersten n Einträge genutzt.

Ist die Anzahl der Einträge m hingegen geringer als die Anzahl n der verfügbaren Lizenzen, werden nur die m Einträge genutzt; ist die Lizenz mit der Option singlealloc erstellt, können die übrigen n-m Lizenzen nicht belegt werden.

Im Folgenden finden Sie für jeden Typ der Anmeldekennung eine Beispieldatei mit Übersicht über Eigenschaften und deren Beschreibungen.

Anmeldekennung: User

Anmeldekennung: UserDomain

Anmeldekennung: UserDefined

Anmeldekennung: User

    "NameList": {

        "FirmCode": 6000010,

        "IgnoreCase": true,

        "FormatVersion": 1,

        "Mode": "User",

        "NameListId": 1234,

        "Users": [

            {

                "Name": "Jane"

            },

            {

                "Name": "Alice"

            },

            {

                "Name": "Bob"

            }

        ]

    }

}

 

Eigenschaft

Beschreibung

FirmCode

enthält den Firm Code, auf den sich die Namelist bezieht.

IgnoreCase

enthält die Auswahl über ein Ausschalten des Groß-/Kleinschreibungskriteriums. Im Standardfall wird über true die Schreibweise ignoriert und die Namen in Kleinschreibung konvertiert. Derzeit werden über diesen Eintrag nur ASCII-Zeichen beeinflusst.

FormatVersion

enthält die gültige JSON-Formatversion.

Mode

enthält den Typ der Anmeldekennung und den entsprechenden Modus der Überprüfung.
Hier den Mode "User".

NameListId

enthält die eindeutige Identifikationsnummer der Namelist.

Users

enthält das Array von Elementen des Typs "Users".

Name

enthält den jeweiligen Namen der Benutzer für autorisierte Lizenzzugriffe als Named User.

 

Anmeldekennung: UserDomain

{

    "NameList": {

        "FirmCode": 6000010,

        "IgnoreCase": true,

        "FormatVersion": 1,

        "Mode": "UserDomain"

        "NameListId": 5678,

        "Users": [

            {

                "Domain": "MyCompany",

                "Name": "Jane"

            },

            {

                "Domain": "MyCompany",

                "Name": "Alice"

            },

            {

                "Domain": "MyCompany",

                "Name": "Bob"

            }

        ]

    }

}

 

Eigenschaft

Beschreibung

FirmCode

enthält den Firm Code, auf den sich die Namelist bezieht.

IgnoreCase

enthält die Auswahl über ein Ausschalten des Groß-/Kleinschreibungskriteriums. Im Standardfall wird über true die Schreibweise ignoriert und die Namen in Kleinschreibung konvertiert. Derzeit werden über diesen Eintrag nur ASCII-Zeichen beeinflusst.

FormatVersion

enthält die gültige JSON-Formatversion.

Mode

enthält den Typ der Anmeldekennung und den entsprechenden Modus der Überprüfung.
Hier den Mode "UserDomain".

NameListId

enthält die eindeutige Identifikationsnummer der Namelist.

Users

enthält das Array von Elementen des Typs "Users".

Domain

enthält den Namen der jeweiligen Domain für einen autorisierten Lizenzzugriff als Named User.

Name

enthält den jeweiligen Namen der Benutzer für autorisierte Lizenzzugriffe als Named User.

 

Anmeldekennung: UserDefined

{

    "NameList": {

        "FirmCode": 6000010,

        "IgnoreCase": true,

        "FormatVersion": 1,

        "Mode": "UserDefined"

        "NameListId": 91011,

        "Users": [

            {

                "UserDefinedText": "ABCSoftwareModule1"

            },

            {

                "UserDefinedText": "ABCSoftwareModule2"

            },

            {

                "UserDefinedText": "ABCSoftwareModule3"

            }

        ]

    }

}

 

Eigenschaft

Beschreibung

FirmCode

enthält den Firm Code, auf den sich die Namelist bezieht.

IgnoreCase

enthält die Auswahl über ein Ausschalten des Groß-/Kleinschreibungskriteriums. Im Standardfall wird über true die Schreibweise ignoriert und die Namen in Kleinschreibung konvertiert. Derzeit werden über diesen Eintrag nur ASCII-Zeichen beeinflusst.

FormatVersion

enthält die gültige JSON-Formatversion.

Mode

enthält den Typ der Anmeldekennung und den entsprechenden Modus der Überprüfung.
Hier den Mode "UserDefined".

NameListId

enthält die eindeutige Identifikationsnummer der Namelist.

Users

enthält das Array von Elementen des Typs "Users".

UserDefinedText

enthält den jeweilig hinterlegten benutzerspezifischen Text für einen autorisierten Lizenzzugriff als Named User.

Importieren einer Namensliste benannter Nutzer (Named User)

Das Verwenden externer Namelist-Dateien erfordert nach deren Erstellung einen Import über den nachfolgenden cmu-Befehl.

Optionen

Beschreibung

--import-namelist -f <Dateiname>

Importiert eine Namensliste benannter Nutzer (namelist) im JSON-Format für die Nutzung des Named User-Features. Über -f wird die Pfadinformation und der Dateiname angegeben, z.B. NameList.txt.

Cmu wandelt dabei die Klartext-Einträge der Namelist-Datei in eine Liste von Hash-Werten um. Über einen weiteren cmu-Befehl kann die Ausgabe der Hash-Werte zu dieser Namelist auf stdout geleitet werden.

achtung

Nach dem Import und dem Umwandeln der Klartext-Einträge in Hash-Werte durch cmu können die Hash-Werte nicht zurück in die Original-Klartext-Einträge exportiert werden: eine Wiederherstellung ist in keinem Fall möglich.

Sie sind somit für das Sichern der Daten selbst verantwortlich!

Benutzt wird die kryptographische Hash-Funktion Secure Hash Algorithmus sha256, um die Integrität der Daten zu gewährleisten.
Bei den Hash-Werten der Nutzer werden lediglich die ersten 8 Bytes verwendet, für den Hash-Wert des gesamten Datei hingegen die vollen 32 Bytes.

Wird eine leere Namelist-Datei importiert, d.h. ohne Angabe von benannten Nutzern, so löscht CodeMeter die dazugehörige Datei, falls diese vorhanden ist.

Wird eine Namelist-Datei neu importiert, so werden belegte Lizenzzugriffe nicht freigegeben. Haben Anwender also über eine Änderung der Namelist-Datei plötzlich keine Berechtigung mehr, bekommen sie auch keine neuen Lizenzzugriffe mehr zugewiesen. Jedoch können vorhergehende Lizenzzugriffe weiter verwendet werden.

Die Ablageorte der dann von cmu erzeugten Namensliste für die verschiedenen Betriebssysteme sind:

Betriebssystem

Ablageort

WIN win8_logoWindows

%ProgramData%/CodeMeter/NamedUser

MacOS macOS

/Library/Application Support/CodeMeter/NamedUser

LINUX Linux

/var/lib/CodeMeter/NamedUser

Die Notation erfolgt nach Firm Code und NameListId, z.B. 6000010-2222.txt.

Anschließend übernimmt CodeMeter das Handling von autorisierten Lizenzzugriffen durch benannte Nutzer, die in der Namelist-Datei stehen.

Ausgabe der Hash-Werte zu einer Namelist-Datei

Optionen

Beschreibung

--show-namelist-hashes -f  <Dateiname>

Gibt die Hash-Werte einer Namelist-Datei nach <Dateiname> aus.

Pro Named User-Eintrag der namelist wird eine Zeile ausgegeben.

Jede Zeile umfasst genau zwei Felder, die durch ein Tab-Zeichen getrennt sind.

Feld

Beschreibung

1

enthält den Anmeldekennungseintrag (modes), d.h. entweder User, UserDomain oder Userdefined.

Die Zeichenketten sind hier auf die Längen gekürzt, die intern durch die CMCREDENTIAL-Struktur vorgegeben sind und über die gehasht wird.

2

repräsentiert den Anmeldekennungseintrag als 8-Byte-Hash-Wert im Hex-String-Format.

Die Ausgabe ist in UTF-8 auf stdout und kann von dort mit entsprechenden Anwendungen weiterverarbeitet werden, z.B. Programmiersprache awk zur Bearbeitung und Auswertung beliebiger Textdaten.

beispiel-de

cmu[32].exe --show-namelist-hashes -f NamedUserHashing_user.json

Ausgabe ist:

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz01234        8094ca566d14d155

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz01234        8094ca566d14d155

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz01234        8094ca566d14d155

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz01234        8094ca566d14d155

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz01234        8094ca566d14d155

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz0123        f25227d24bb65ac4

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz0123        f25227d24bb65ac4

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz012ä        de77086674e55409

abcdefghijklmn\abcdefghijklmnopqrstuvwxyz012        a1c4b5951eb70a1f

 

Auflisten abgelehnter Lizenzzuweisungen (rejected allocations)

Das List-Rejected-Allocations-Feature erlaubt es, alle abgelehnten Lizenzzuweisungen für einem bestimmten CodeMeter Lizenzserver (lokal oder entfernt) zu verfolgen und als Liste mit Protokolleinträgen abzurufen.

Die aufgelisteten Protokolleinträge umfassen die folgenden Informationen: Zeitstempel (timestamp, UTC), LicenseID, Firm Code, Product Code, Product Item Reference, License Quantity (Lizenzanzahl) sowie Client- und Benutzerinformationen.

Ein Konfigurieren ermöglicht die Datenausgabe entweder für einzelne Firm Codes oder alle Firm Codes (Standard). Zudem wird ein Angeben der maximalen Anzahl der Protokolleinträge unterstützt. Der aktuelle Stand der Protokolleinträge kann jederzeit abgerufen werden.

Werden Daten nicht abgerufen, so sind diese nach einem Neustart von CodeMeter Lizenzserver nicht mehr verfügbar. Wird jedoch lediglich das Feature deaktiviert, verbleiben die Daten und können später abgerufen werden. Erst nach einer späteren erneuten Aktivierung gehen alle nicht abgerufenen Daten der vorherigen Aufzeichnung verloren.

Das Verwenden dieses Features erfolgt unabhängig von der Lizenzverfolgung (license tracking).

information_weiss_klein26

Benutzer müssen die Daten aktiv über cmu abrufen. Die Daten werden dann auf die Kommandozeile (stdout) oder in eine benutzerdefinierte Datei geschrieben.

Aufgezeichnete Daten werden nicht automatisch in eine Protokolldatei an zentraler Stelle geschrieben, wie das zum Beispiel beim Protokoll der Lizenzverfolgung der Fall ist.

Das Feature kann auch über Profiling-Einträge in der Registry (Windows) / Server.ini (Unix) aktiviert, deaktiviert und konfiguriert werden.

Für eine effiziente bzw. effektive Nutzung gelisteter abgelehnter Lizenzzuweisungen kann entweder eine hohe Anzahl der Protokolleinträge mit potenziell höherem Speicherverbrauch und nicht so häufigen Datenabrufen eingestellt werden, oder eine niedrige Anzahl der Protokolleinträge mit potenziell geringerem Speicherverbrauch und der Notwendigkeit, Daten häufiger abzurufen, um keine Ablehnungen zu verpassen, wenn die Grenze der maximalen Anzahl der Protokolleinträge erreicht wird.

Befehl

Beschreibung

--list-rejected-allocations

 

Optionen

 

 

--activate

Aktiviert das Protokollieren abgelehnter Lizenzzuweisungen.

information_grau_klein26

Beachten Sie, dass bei der Aktivierung über cmu ohne explizite Angabe der Parameter '--firmcode' oder '--max-entries' keine eventuell bereits im Profiling vorhandenen Werte geladen werden. Vielmehr werden diese auf ihre Voreinstellungen (Firmcode = '0', MaxEntries = '1000') gesetzt.

Zusätzliche Parameter:

--firmcode <fc>

Gibt über <fc> einen einzelnen Firm Code an, für den das Protokollieren aktiviert werden soll.

--max-entries <num>]

Gibt über <num> die maximale Anzahl der Protokolleinträge an.

Der Standard beträgt 1000. Es können Werte zwischen 1 und 200000 gewählt werden.

Ist die maximale Anzahl der Prototokolleinträge erreicht, wird beim Abruf der Daten ein zusätzlicher Protokolleintrag ausgegeben, der über das Zeitfenster informiert, in dem keine 'Ablehnungen' aufgezeichnet wurden. Dies entspricht der Differenz zwischen den Zeitstempeln der letzten beiden Einträge.

Beispiel:


2021-06-16T15:45:17 Denial LicenseID:3-5430061-6001494-16, FC:6001494, PC:999, LQ:5, Client:"::1", User:"WIBU\apri"
2021-06-16T15:45:17 Denial LicenseID:3-5430061-6001494-16, FC:6001494, PC:999, LQ:5, Client:"::1", User:"WIBU\apri"
2021-06-16T15:45:18 Denial LicenseID:3-5430061-6001494-16, FC:6001494, PC:999, LQ:5, Client:"::1", User:"WIBU\apri"
2021-06-16T15:45:30 MAXIMUM NUMBER OF ENTRIES REACHED. SOME REJECTIONS MAY NOT HAVE BEEN RECORDED SINCE THE LAST WRITTEN ENTRY.

 

--deactivate

Deaktiviert das Protokollieren abgelehnter Lizenzzuweisungen.

 

--status

Fragt den derzeitigen Stand der Protokollierung ab.

 

--get-data

Fragt alle von CodeMeter Lizenzserver protokollierten Daten ab und gibt sie in Reihenfolge des Auftretens der abgelehnten Lizenzzuweisungen als zeitlich sortierte Liste in der Konsole (stdout) aus.

 

Zusätzliche Parameter:

 

 

[--file <Dateiname>]

Optional können die Daten auch in eine Datei geschrieben werden.

Mit dem Parameter --file wird entweder eine bereits vorhandene Datei über Anhängen der Daten bis zum Erreichen der maximalen Anzahl der Protokolleinträge erweitert oder eine neue Datei mit dem angegebenen Namen erstellt, falls noch keine vorhanden ist.

 

Optional

 

 

--server <ip oder hostname>

Erlaubt das Ausführen der obenstehenden Befehle auch für einem entfernen Rechner.

Dazu muss der entfernte Rechner auf dem CodeMeter Lizenzserver als Dienst läuft als LAN Server eingerichtet sein. Dies entweder im Profiling (IsNetworkServer) oder in CodeMeter WebAdmin (Einstellungen | Server | Server-Zugriff).

Die Konsolen-Ausgabe für die Befehle --activate, --deactivate oder --status könnte wie folgt aussehen:

List-Rejected-Allocations – Activated

 

Started recording at: 2021-07-05T15:49:55

Stopped recording at:

 

Tracked Firmcode: All

Maximum number of entries: 1000

 

Total rejections: 324

 

Entries ready for retrieval: 77

Die Ausgabe einer Datenabfrage könnte wie folgt aussehen.

cmu --list-rejected-allocations --get-data

2021-05-10T10:11:32 Denial LicenseID:3-5430061-6001494-16, FC:6000010, PC:999, LQ:1, Client:"192.168.2.200", User:"VM\ap"

2021-05-10T11:00:01 Denial LicenseID:3-5430062-6001494-54, FC:6000010, PC:42, LQ:3, Client:"192.168.2.55", User:"ABC\db"

2021-05-10T11:20:19 Denial LicenseID:3-5430061-6001494-18, FC:6000010, PC:999, LQ:1, Client:"10.49.205.3", User:"ABC\cd"

2021-05-10T12:01:33 Denial LicenseID:3-5430063-6001494-99, FC:6000010, PC:123, LQ:1, Client:"192.168.2.106", User:"ABC\ap"

2021-05-10T12:10:00 Denial LicenseID:3-5430061-6001494-17, FC:6000010, PC:999, LQ:1, Client:"10.49.205.3", User:"ABC\cd"

2021-05-10T13:59:59 Denial LicenseID:3-5430062-6001494-54, FC:6000010, PC:42, LQ:3, Client:"192.168.2.55", User:"ABC\dabu"

2021-05-10T14:05:48 Denial LicenseID:3-5430062-6001494-54, FC:6000010, PC:42, LQ:1, Client:"192.168.2.55", User:"ABC\db"

2021-05-10T14:49:53 Denial LicenseID:3-5430063-6001494-99, FC:6000010, PC:123, LQ:1, Client:"192.168.2.106", User:"ABC\ap"

Zusätzliche Optionen

Die folgende Liste zeigt zusätzliche cmu-Optionen auf:

Optionen

Beschreibung

/f <file> oder --file <file>

Zusätzliche Option, die das Befehlsergebnis in eine Datei <file> schreibt. Diese Option macht z.B. Sinn in Kombination mit den Befehlen --context, --import, --cmdust, --export-acl, --import-acl.

/s <serial> oder --serial <serial>

Zusätzliche Option, die bestimmt, dass ein Befehl nur für einen CmContainer gilt, dessen Seriennummer <serial> angegeben wird, z.B. "1-10234242".

/p <pwd> oder --password <pwd>

Zusätzliche Option in Kombination mit den Befehlen --enable und --firmware-update. Die Option definiert das notwendige CodeMeter Passwort für diesen Befehl.

--firmcode <fc>

Zusätzliche Option in Kombination mit den Befehlen --borrow oder --return, die den Firm Code der ausgeliehenen Lizenz definiert.

--productcode <pc>

Zusätzliche Option in Kombination mit den Befehlen --borrow oder --return, die den Product Code der ausgeliehenen Lizenz definiert.

--featuremap <fm>

Zusätzliche Option in Kombination mit den Befehlen --borrow oder --return, die die Feature Map der ausgeliehenen Lizenz definiert.

--server <servername>

Zusätzliche Option um eine Lizenz von einem anderen Server auszuleihen. Wird zusammen mit dem Befehl --borrow benutzt.

--write

Zusätzliche Option, die zusammen mit dem Befehl --detect-proxy verwendet wird und die Einstellungen über das CodeMeter-Profiling abspeichert. Diese Einstellungen werden nur geschrieben, wenn zuvor kein Proxy im Profiling gesetzt wurde. Zum Überschreiben der Einstellungen wird die Option --force verwendet.
Unter LINUX Linux wird die Umgebungsvariable http_proxy als System Proxy betrachtet. https_proxy wird (noch) nicht unterstützt.

--force

Zusätzliche Option, die zusammen mit dem Befehl --detect-proxy verwendet wird und bereits bestehende Proxy-Einstellungen im CodeMeter-Profiling überschreibt.
Unter LINUX Linux wird die Umgebungsvariable http_proxy als System Proxy betrachtet. https_proxy wird (noch) nicht unterstützt.

--show-config-disk

Zeigt die aktuellen Einstellungen zum Beispiel zu wechselbaren/festen (removable/fixed) Laufwerken oder zum Typ des definierten Master Boot Records (MBR).

Diese Option betrifft das Verhalten von virtuellen Flash-Speicher-Partitionen. Verwendbar nur für CmStick and CmStick/M.

--set-config-disk <parameter>

Erlaubt Ihnen ein spezielles Verhalten der virtuellen Flash-Speicher-Partitionen zu bestimmen, z.B. Laufwerkseinstellungen, Boot Code oder Aktivierungen (nur CmDongle).

information_grau_klein26

Bitte beachten Sie, dass hier ein erneutes Anstecken des CmDongles erforderlich ist.

Beschreibung

Parameter

Laufwerkseinstellungen

RemovableDisk,LocalDisk

Boot Code

Int18Boot,ZeroBoot,LoopBoot,SwapBoot,VbrBoot

Aktivierung

ActivePartition,InactivePartition

FAT

Fat16,Fat32

USB-Kommunikationsgeräteklasse

HidCommunication; MsdCommunication

--export-acl

Erlaubt Ihnen, die Liste von Lizenz-Zugriffsberechtigungen (ACL, Access Control List) zu exportieren.

Bitte verwenden Sie die Option --file zum Spezifizieren des Datei-Namens.

Die Angabe von absoluten Pfaden wird unterstützt. Wird kein Pfad angegeben, so liegt die Datei im lokalen Verzeichnis.

Der Export ist im laufenden Betrieb möglich möglich, der CodeMeter WebAdmin-Dienst muss nicht separat gestoppt oder gestartet werden.

Die Liste wird im Format *.json exportiert. Es muss keine Datei-Erweiterung angegeben werden. Die Datei ist bearbeitbar. Für Informationen über zu verwendende Format-Konventionen kontaktieren Sie bitte Wibu-Systems Support.

information_grau_klein26

In unterschiedlichen Ausmaßen steht Lizenz-Zugriffsberechtigungen für alle Betriebssystem zur Verfügung.

Unter macOS und Linux stehen Windows -spezifische Konfigurationen, z.B. Active Directory und Gruppen, nicht zur Verfügung.

Jedoch ist der Betrieb von macOS und Linux-Clients an CodeMeter Lizenzserver unter Windows möglich, wenn die Clients sich in einer Windows-Domäne befinden. Der Betrieb vom Windows-Clients an CodeMeter Lizenzserver unter Linux/macOS ist derzeit nicht möglich.

Unter macOS und Linux funktioniert der Export wie unter Windows.

Jedoch dürfen die JSON-Dokumente nur Elemente enthalten, die der jeweilige CodeMeter Lizenzserver verarbeiten kann. Im Fehlerfall wird der gesamte Export verweigert und eine Fehlermeldung ausgegeben.

information_grau_klein26

Eine Unterstützung von Triple Mode Redundancy (TMR) ist derzeit nicht implementiert.

--import-acl

Erlaubt Ihnen, die Liste von Lizenz-Zugriffsberechtigungen (ACL, Access Control List) zu importieren.

Bitte verwenden Sie die Option --file zum Spezifizieren des Datei-Namens.

Die Angabe von absoluten Pfaden wird unterstützt.

Der Import ist im laufenden Betrieb möglich möglich, der CodeMeter WebAdmin-Dienst muss nicht separat gestoppt oder gestartet werden.

Die Liste wird im Format *.json importiert. Es muss keine Datei-Erweiterung angegeben werden.

information_grau_klein26

In unterschiedlichen Ausmaßen steht Lizenz-Zugriffsberechtigungen für alle Betriebssystem zur Verfügung.

Unter macOS und Linux stehen Windows -spezifische Konfigurationen, z.B. Active Directory und Gruppen, nicht zur Verfügung.

Jedoch ist der Betrieb von macOS und Linux-Clients an CodeMeter Lizenzserver unter Windows möglich, wenn die Clients sich in einer Windows-Domäne befinden. Der Betrieb vom Windows-Clients an CodeMeter Lizenzserver unter Linux/macOS ist derzeit nicht möglich.

Unter macOS und Linux funktioniert der Import wie unter Windows.

Jedoch dürfen die JSON-Dokumente nur Elemente enthalten, die der jeweilige CodeMeter Lizenzserver verarbeiten kann. Im Fehlerfall wird der gesamte Import verweigert und eine Fehlermeldung ausgegeben.

information_grau_klein26

Eine Unterstützung von Triple Mode Redundancy (TMR) ist derzeit nicht implementiert.

--check-cm-integrity

Erlaubt Ihnen, die CodeMeter-Signatur zu überprüfen.

--delete-cmcloud-credentials

Erlaubt Ihnen das Löschen der CodeMeter Cloud-Anmeldeinformationen, die zu dem mit --serial spezifizierten CmCloudContainer gehören.

information_grau_klein26

Wenn Sie die Anmeldeinformationen löschen, können Sie nicht mehr auf Ihren CmCloudContainer zugreifen.
Die Lizenz innerhalb von CodeMeter Cloud ist von dieser Aktion nicht betroffen.

Beispiele

Aktion

Parameter

Anzeigen der cmu-Optionen

Cmu[32].exe -h

Erstellen einer CodeMeter Context-Datei (hier:1-1040870.WibuCmRaC) für den Firm Code 10 (Firm Item Ebene)

Cmu[32].exe -c10 -f1-140870.WibuCmRaC

Importiert eine CodeMeter Update-Datei (hier:1-1040870.WibuCmRaU) -> programmiert den verbundenen CmContainer um

Cmu[32].exe -i -f1-1040870.WibuCmRaU

Zeigt die Versionen der aktuellen CodeMeter-Komponenten.

cmu[32] --version

Listet alle verfügbaren CodeMeter-Netzwerk-Lizenzserver auf und falls vorhanden auch eine Liste der verbundenen Lizenzen.

cmu[32] --list-server --list-content

Startet 100 einfache Tests. Die Tests werden nur ausgeführt für den CmContainer mit der angegebenen Seriennummer 1-233232.

cmu[32] --test 100 --serial 1-233232

Ändert für den CmContainer 1-2345 den Enabling Status auf "temporär enabled"und nutzt dazu das CodeMeter-Password "SECRET".

cmu[32] --enable2 --serial 1-2345 --password SECRET