Skip to Content
Nouvelle version 12 disponible 🎉
LicensingLigne de commande

Outils en ligne de commande Server

L’outil en ligne de commande lic génère, signe, met à jour et vérifie des licences Babel depuis un terminal, un script ou un build, sous Windows, Linux et macOS.

lic est l’équivalent en ligne de commande de la génération de licences dans Babel Desktop. Il reçoit l’assembly pour lequel vous émettez la licence, ou un fichier de licence existant, et un ensemble d’options qui décrivent la licence : son titulaire, le produit, sa date d’expiration, les fonctionnalités qu’elle déverrouille, les restrictions qui s’appliquent et la clé qui la signe. Le résultat est un fichier de licence XML ou une licence sous forme de chaîne, par exemple un numéro de série. Le même outil génère des paires de clés, exporte des clés publiques, calcule des clés matérielles, vérifie des signatures et met à jour des licences existantes.

L’outil existe sous deux formes, avec des options identiques :

  • lic dans les archives zip de Babel : lic.exe dans babel_net472_<version>.zip et lic.dll (exécuté avec dotnet lic.dll) dans babel_net80_<version>.zip, babel_net90_<version>.zip et babel_net100_<version>.zip.
  • Babel.Licensing.Tool, un package d’outil .NET qui installe la commande lic sur tout système d’exploitation doté du SDK .NET.

Les deux sont fournis avec les éditions de Babel Licensing, Server et Data Center.

Démarrage rapide

Générez une paire de clés une seule fois, conservez la clé privée en lieu sûr et incorporez la clé publique dans votre application. Le même fichier PEM signe toutes les licences que vous émettez :

lic --keygen rsa --keysize 2048 --keyfile keys.pem lic --publickey --keyfile keys.pem

Générez une licence signée pour un assembly. Le titulaire, le produit, les dates, les fonctionnalités, les champs et les restrictions sont tous des options ; --sign signe le résultat avec la clé indiquée par --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-8

Vérifiez un fichier de licence avec la clé publique, mettez à jour une licence sur place ou produisez un numéro de série au lieu d’un fichier XML :

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.serial

Une licence est écrite sans signature si --sign ne figure pas sur la ligne de commande, et une licence non signée échoue à la validation dans l’application. Passez --sign chaque fois que vous passez --keyfile ou --keyname, ou utilisez la propriété Sign de la tâche MSBuild.

Ce que vous pouvez faire

TâcheOptions
Créer une paire de clés, exporter la clé publique--keygen, --keysize, --publickey
Décrire la licence--id, --type, --sites, --issuedate, --expiredate, --supportexpiredate, --licensee, --product, --component, --assembly
Déverrouiller des fonctionnalités et transporter des données--feature, --field
Restreindre l’utilisation--trial, --hardware, --domain, --usage, --beta, --restriction
Signer, vérifier, mettre à jour--keyfile, --keyname, --keypwd, --sign, --verify, --update
Choisir la sortie--output, --format, --encoding, --xmldeclaration, --keyinfo, --logfile
Identifier une machine--hardwareid, --salt, --showhardwareinfo
Écrire des scripts et automatiser--format json, --quiet, --strict-exit, --project, --makeproject

Chaque option est décrite dans la Référence. Pour les pipelines de CI et les agents IA, le Mode adapté à l’IA transforme la sortie en un flux JSON versionné avec des codes de sortie sémantiques, et lic --help --format json décrit chaque option sous une forme lisible par machine.

Fournir la licence à l’outil

lic a besoin de sa propre licence Babel Licensing. Il recherche babel.licenses dans son dossier d’installation, puis dans le chemin que contient la variable d’environnement BABEL_LICENSE_PATH ; l’option --license remplace les deux par un fichier, un dossier dans lequel chercher ou env:VARIABLE pour une clé de licence stockée dans une variable d’environnement. lic --license sans argument affiche la licence utilisée. Voir Fournir la licence à l’outil pour la configuration de l’outil dotnet.

Dans cette section

  • Outil Babel Licensing : installer lic comme outil dotnet global ou local, lui fournir sa licence et l’exécuter sur un serveur de build.
  • Référence : toutes les options, regroupées comme dans lic --help, avec les paires clé-valeur qu’accepte chaque restriction.
  • Mode adapté à l’IA : le schéma de sortie lic.cli.v1, --quiet, --strict-exit et le tableau des codes de sortie.
  • Tâche MSBuild : la tâche Lic de Babel.Build, ses propriétés et le fichier de projet .lcproj qu’utilisent --project et --makeproject.
Last updated on