Référence
Notes de version
Ce qui a changé dans chaque version de Keyright — le service d'émission et les SDK .NET, Node.js, Python et Java.
Keyright est livré sous la forme d’un service d’émission hébergé plus des SDK pour .NET, Node.js, Python et Java (et une API HTTP brute pour tout autre langage). Les SDK partagent une seule ligne de version et vérifient le même format signé, de sorte qu’une gamme de produits multi-langages se met à niveau d’un seul bloc. Versions des paquets : NuGet, npm, PyPI, Maven Central (com.delta1labs:keyright).
Service d’émission auto-hébergé 2.2.2
L’image auto-hébergée (ghcr.io/delta1-labs/keyright:2.2.2) ajoute :
- Alertes par e-mail configurables — définissez votre SMTP et choisissez exactement quels événements vous envoient un e-mail, chacun avec sa propre liste de destinataires (tableau de bord → Settings → Email alerts). Les alertes couvrent les licences clients sur le point d’expirer/expirées/à la limite de sièges et — point important pour l’auto-hébergement — la licence de votre propre instance qui approche de l’expiration, entre en grâce ou se verrouille (gating), pour qu’une instance fail-closed ne s’arrête jamais à l’improviste. Un bouton « send test email » vérifie vos réglages.
- Diagnostics — chaque erreur serveur est journalisée avec un identifiant de corrélation court, également renvoyé à l’appelant (
X-Keyright-Error-Id), de sorte qu’un signalement correspond à une ligne de journal ; un nouveauGET /admin/self-diagnosticsindique la version, l’accessibilité de la base de données + les migrations en attente, la phase de la licence, les fonctionnalités activées, le statut SMTP/alertes et le temps de fonctionnement — et répond même lorsque l’instance est verrouillée (gated). - Résilience au démarrage à froid — le démarrage réessaie la connexion/migration de la base de données avec un délai progressif (ajustable via
KEYRIGHT_STARTUP_DB_RETRIES), de sorte qu’une instance sur une infrastructure à mise à l’échelle à zéro ne sert qu’une fois sa base de données joignable (pas d’erreurs à la première requête après une période d’inactivité). - Durcissement 2.2.1 — le « send test email » des alertes échoue désormais rapidement avec une erreur claire sur un hôte SMTP incorrect/injoignable (délai d’attente de 15 s) au lieu de rester bloqué ; petites finitions des diagnostics.
- Gestion des niveaux et des essais depuis le tableau de bord — modifiez ou supprimez les niveaux de produit existants sur place, et configurez l’essai en libre-service (durée par défaut en jours, niveau et sièges) directement depuis la page du produit.
1.2.0
- Désactivation dans chaque SDK —
deactivate()libère un siège activé depuis la machine courante (en ligne), de sorte qu’un client peut déplacer une licence mono-poste vers un nouvel appareil sans vous contacter. - Import de lease hors ligne —
importOfflineLease()permet à une machine isolée (air-gapped) de vérifier un fichier de lease que vous avez émis à la main, en reproduisant octet pour octet le chemin d’activation en ligne. - Documentation enrichie — un parcours client complet par langage, un guide d’intégration en HTTP brut (y compris comment vérifier vous-même la signature d’une lease), et une visite illustrée du tableau de bord d’administration.
1.1.0
- Essais gratuits en libre-service — activez des essais par produit, laissez les clients obtenir eux-mêmes une clé d’essai depuis votre propre site, et distribuez des fichiers d’essai hors ligne aux évaluateurs isolés du réseau (air-gapped).
- Correctif de lease d’essai — l’activation en ligne propage désormais l’indicateur d’essai à travers la lease signée, de sorte que les licences d’essai appliquent leurs règles d’évaluation sous activation en ligne exactement comme hors ligne. SDK mis à jour dans les quatre langages.
1.0.0
Première version publique.
Infrastructure de licences pour les éditeurs de logiciels — émettez et appliquez des licences sans construire votre propre serveur :
- Service d’émission adossé à Postgres (une Minimal API ASP.NET Core) qui signe des fichiers de licence hors ligne et des leases d’activation en ligne avec des clés RSA par tenant.
- Verrouillage par machine et sièges — une licence mono-poste ne peut pas tourner sur deux machines, même hors ligne.
- Droits et niveaux transportés dans la licence, pour que votre application puisse conditionner les fonctionnalités selon le plan.
- SDK pour .NET, Node.js, Python et Java, chacun vérifiant le même format signé avec votre clé publique embarquée — plus une API HTTP brute pour tout autre langage.
- Multi-tenant avec des clés de signature par tenant, et compatible au niveau du protocole avec le système de licences de Nebula.NET.
Des questions ou un bug à signaler ? Contactez-nous.