Befehlszeilentools Server
Das Befehlszeilentool lic erzeugt, signiert, aktualisiert und prüft Babel-Lizenzen aus einem Terminal, einem Skript oder einem Build, unter Windows, Linux und macOS.
lic ist das Gegenstück auf der Befehlszeile zur Lizenzerzeugung in Babel Desktop. Das Tool erhält die Assembly, die Sie lizenzieren, oder eine vorhandene Lizenzdatei und dazu eine Reihe von Schaltern, die die Lizenz beschreiben: für wen sie bestimmt ist, für welches Produkt, wann sie abläuft, welche Funktionen sie freischaltet, welche Einschränkungen gelten und welcher Schlüssel sie signiert. Das Ergebnis ist eine XML-Lizenzdatei oder eine Lizenz als Zeichenfolge, etwa eine Seriennummer. Dasselbe Tool erzeugt Schlüsselpaare, exportiert öffentliche Schlüssel, berechnet Hardwareschlüssel, prüft Signaturen und aktualisiert bereits vorhandene Lizenzen.
Das Tool gibt es in zwei Formen mit identischen Optionen:
licin den Zip-Paketen von Babel:lic.exeinbabel_net472_<version>.zipundlic.dll(ausgeführt mitdotnet lic.dll) inbabel_net80_<version>.zip,babel_net90_<version>.zipundbabel_net100_<version>.zip.Babel.Licensing.Tool, ein Paket vom Typ .NET-Tool, das den Befehllicauf jedem Betriebssystem mit dem .NET SDK installiert.
Beide gehören zu den Editionen von Babel Licensing, Server und Data Center.
Schnellstart
Erzeugen Sie einmal ein Schlüsselpaar, bewahren Sie den privaten Schlüssel sicher auf und betten Sie den öffentlichen Schlüssel in Ihre Anwendung ein. Dieselbe PEM-Datei signiert jede Lizenz, die Sie ausstellen:
lic --keygen rsa --keysize 2048 --keyfile keys.pem
lic --publickey --keyfile keys.pemErzeugen Sie eine signierte Lizenz für eine Assembly. Lizenznehmer, Produkt, Datumsangaben, Funktionen, Felder und Einschränkungen sind allesamt Schalter. --sign signiert das Ergebnis mit dem Schlüssel aus --keyfile:
lic MyApp.dll --keyfile keys.pem --sign --licensee name="Contoso" --licensee email=info@contoso.com --product name="MyApp" --product version=2.1 --expiredate 365 --feature Pro=1 --field Seats=25 --trial days=30 --output MyApp.licenses --encoding utf-8Prüfen Sie eine Lizenzdatei gegen den öffentlichen Schlüssel, aktualisieren Sie eine Lizenz an Ort und Stelle, oder geben Sie statt einer XML-Datei eine Seriennummer aus:
lic MyApp.licenses --verify --keyfile keys.pem
lic MyApp.licenses --update --keyfile keys.pem --sign --field Seats=50
lic MyApp.dll --keyfile ecdsa.pem --sign --format serial --product name="MyApp" --expiredate 30 --output MyApp.serialEine Lizenz wird unsigniert geschrieben, wenn --sign nicht auf der Befehlszeile steht, und eine unsignierte Lizenz besteht die Validierung in der Anwendung nicht. Übergeben Sie --sign immer dann, wenn Sie --keyfile oder --keyname übergeben, oder verwenden Sie die Eigenschaft Sign der MSBuild-Aufgabe.
Was Sie tun können
| Aufgabe | Schalter |
|---|---|
| Ein Schlüsselpaar erstellen, den öffentlichen Schlüssel exportieren | --keygen, --keysize, --publickey |
| Die Lizenz beschreiben | --id, --type, --sites, --issuedate, --expiredate, --supportexpiredate, --licensee, --product, --component, --assembly |
| Funktionen freischalten und Daten mitgeben | --feature, --field |
| Die Nutzung einschränken | --trial, --hardware, --domain, --usage, --beta, --restriction |
| Signieren, prüfen, aktualisieren | --keyfile, --keyname, --keypwd, --sign, --verify, --update |
| Die Ausgabe wählen | --output, --format, --encoding, --xmldeclaration, --keyinfo, --logfile |
| Einen Rechner identifizieren | --hardwareid, --salt, --showhardwareinfo |
| Skripte und Automatisierung | --format json, --quiet, --strict-exit, --project, --makeproject |
Jeder Schalter ist in der Referenz beschrieben. Für CI-Pipelines und KI-Agenten macht der KI-freundliche Modus aus der Ausgabe einen versionierten JSON-Datenstrom mit semantischen Exitcodes, und lic --help --format json beschreibt jede Option in maschinenlesbarer Form.
Das Tool lizenzieren
lic braucht eine eigene Lizenz für Babel Licensing. Das Tool sucht babel.licenses in seinem Installationsordner und danach in dem Pfad, den die Umgebungsvariable BABEL_LICENSE_PATH enthält. Der Schalter --license hat Vorrang vor beiden und nennt eine Datei, einen zu durchsuchenden Ordner oder env:VARIABLE für einen Lizenzschlüssel, der in einer Umgebungsvariablen liegt. lic --license ohne Argument gibt die verwendete Lizenz aus. Die Einrichtung als dotnet-Tool beschreibt Das Tool lizenzieren.
In diesem Abschnitt
- Babel Licensing Tool:
licals globales oder lokales dotnet-Tool installieren, lizenzieren und auf einem Buildserver ausführen. - Referenz: jede Option, gruppiert wie in
lic --help, mit den Schlüssel-Wert-Paaren, die jede Einschränkung akzeptiert. - KI-freundlicher Modus: das Ausgabeschema
lic.cli.v1,--quiet,--strict-exitund die Tabelle der Exitcodes. - MSBuild-Aufgabe: die Aufgabe
LicinBabel.Build, ihre Eigenschaften und die Projektdatei.lcprojhinter--projectund--makeproject.