Demander une licence hors ligne
Ce que fait la demande hors ligne
BaaStide a besoin des rapports quotidiens de votre plateforme pour calculer votre solde et faire la licence suivante. La demande hors ligne porte ces rapports dans un seul fichier.
La plateforme écrit d'abord les rapports qui restent à écrire. Elle met ensuite dans le fichier tous les rapports qui suivent la licence en service. Elle signe le fichier avec sa clé. Vous envoyez le fichier à BaaStide, puis vous importez la licence que BaaStide vous renvoie.
La plateforme n'a besoin d'aucun accès à Internet pour faire ce fichier. Vous transportez le fichier vous-même.
Chaque export est écrit dans le journal d'audit de la plateforme, sous l'action « Demande de licence exportée ». Le journal ne contient jamais le contenu du fichier.
Prérequis
- Le rôle Administrateur plateforme. Voir Rôles et droits.
- Une session du portail. Une clé API et un accès MCP ne peuvent jamais exporter une demande de licence.
- Un terminal avec
curl, sur un poste qui atteint le portail. - Pour une plateforme sans licence : un code d'enregistrement donné par BaaStide.
Dans les exemples, remplacez <serveur> par le nom de votre portail BaaStide.
Ce que contient le fichier de demande
Le fichier est un fichier JSON. Il porte deux parties.
| Partie | Ce qu'elle donne |
|---|---|
summary | Une copie lisible, pour vous : l'ID de la stack, l'ID de l'installation, l'empreinte de la stack, la date de l'export, la licence en service, et le nombre de rapports avec leur premier et leur dernier jour. |
request | La demande signée par la plateforme. BaaStide ne lit que cette partie. |
La partie signée porte la clé publique de la plateforme et son empreinte, la version de la plateforme, la licence en service, le code d'enregistrement quand vous en donnez un, les rapports quotidiens, et l'heure du serveur.
Le fichier ne contient aucune donnée sauvegardée, aucun nom de machine et aucune clé privée. Les rapports ne donnent que des nombres. Voir Suivre la consommation.
Exporter le fichier de demande
-
Ouvrez un terminal sur un poste qui atteint le portail.
-
Connectez-vous. Lancez cette commande, puis tapez le corps de la requête et appuyez sur Ctrl-D. La réponse pose le cookie de session dans le fichier
cookies.txt:curl -sS -c cookies.txt \-H 'X-Baastide-Request: 1' -H 'Content-Type: application/json' \-d @- \'https://<serveur>/api/auth/login'Corps à taper :
{"email":"<votre email>","password":"<votre mot de passe>"}.L'option
-d @-lit le corps sur l'entrée standard. Votre mot de passe ne passe donc ni dans la ligne de commande, ni dans l'historique du terminal. -
Lisez le champ
statede la réponse. Quand il vautmfa_required, donnez votre code de vérification :curl -sS -b cookies.txt -c cookies.txt \-H 'X-Baastide-Request: 1' -H 'Content-Type: application/json' \-d '{"code":"<code à six chiffres>"}' \'https://<serveur>/api/auth/mfa/verify'Quand
statevautmfa_enrollment_required, activez d'abord la vérification en deux étapes dans le portail. Voir Connexion et vérification en deux étapes. -
Exportez la demande. La commande enregistre le fichier sous le nom que la plateforme donne :
curl -sS -b cookies.txt -c cookies.txt -OJ \-H 'X-Baastide-Request: 1' -H 'Content-Type: application/json' \-d '{}' \'https://<serveur>/api/admin/license/request' -
Fermez la session sur le serveur :
curl -sS -b cookies.txt -X POST \-H 'X-Baastide-Request: 1' \'https://<serveur>/api/auth/logout' -
Supprimez le fichier de cookies :
rm cookies.txt. -
Ouvrez le fichier exporté et lisez sa partie
summary. Vérifiez le nombre de rapports et leurs dates.
Le fichier porte le nom baastide-license-request-<ID de la stack>-<AAAAMMJJ>.json. Sur une
plateforme sans licence, le nom porte l'ID de l'installation à la place de l'ID de la stack.
L'option -OJ écrit toujours un fichier, même quand la plateforme refuse la demande. Un refus donne
alors un fichier nommé request. Vérifiez donc le nom du fichier obtenu, et vérifiez que son
contenu commence par "format": "baastide-license-request-file". Un fichier request porte le
message de refus.
Fermez toujours la session avec logout. La commande rm cookies.txt supprime le fichier local,
mais elle ne ferme pas la session sur le serveur.
Exporter la première demande d'une plateforme neuve
Une plateforme sans licence n'a pas encore d'ID de stack. BaaStide a donc besoin d'un code d'enregistrement pour reconnaître votre plateforme.
-
Demandez un code d'enregistrement à BaaStide.
-
Suivez les étapes 1 à 3 de la procédure précédente.
-
Exportez la demande avec le code :
curl -sS -b cookies.txt -c cookies.txt -OJ \-H 'X-Baastide-Request: 1' -H 'Content-Type: application/json' \-d '{"registration_code":"<code>"}' \'https://<serveur>/api/admin/license/request' -
Fermez la session sur le serveur :
curl -sS -b cookies.txt -X POST \-H 'X-Baastide-Request: 1' \'https://<serveur>/api/auth/logout' -
Supprimez le fichier de cookies :
rm cookies.txt. -
Vérifiez le nom du fichier obtenu, comme dans la procédure précédente.
Sans licence et sans code d'enregistrement, la plateforme refuse la demande.
Envoyer le fichier et importer la réponse
- Copiez le fichier de demande sur un poste qui atteint Internet.
- Envoyez le fichier à BaaStide.
- Attendez le fichier de licence. Il porte le nom
baastide-license-<ID de la stack>-<numéro>.lic. - Importez ce fichier sur la page Licence du portail. Voir Importer une licence.
- Vérifiez que l'état de la licence est Valide.
Une licence hors ligne est mensuelle. Elle vaut un mois, plus une période de grâce de 14 jours. Refaites une demande chaque mois, avant la fin de la période de grâce. Voir États de la licence et blocages.
Lire le mode de renouvellement
- Connectez-vous au portail avec le rôle Administrateur plateforme.
- Ouvrez Plateforme, puis Licence.
- Lisez la ligne Renouvellement du bloc Licence. Elle donne « Hors ligne, avec un fichier de demande de licence » ou « En ligne, chaque jour ».
L'export d'une demande fonctionne dans les deux modes.
Limites et précautions
- Un fichier de demande porte au plus 1 000 rapports, du plus ancien au plus récent. Quand votre plateforme en a plus, la demande suivante porte le reste. Un rapport pèse environ 1,5 Kio dans le fichier.
- La demande ne porte que les rapports qui suivent la licence en service. Après un import, la demande suivante repart de cette nouvelle licence.
- Quand vous envoyez deux fois le même fichier, BaaStide renvoie la même licence. Un nouvel export est une nouvelle demande : il porte de nouveau les rapports déjà envoyés, et BaaStide ne les compte qu'une fois. Vous pouvez donc refaire l'export sans risque.
- Envoyez le fichier à BaaStide seulement. Quand vous donnez un code d'enregistrement, le fichier le porte.
- N'ouvrez pas le fichier dans un éditeur pour le modifier. Toute modification casse sa signature, et BaaStide refuse la demande.
- Un export et un import demandent une session du portail. Une clé API et un accès MCP les reçoivent toujours en refus.
- Quand la plateforme ne peut pas utiliser sa clé de licence, l'export échoue avec le message « La plateforme ne peut pas utiliser sa clé de licence. » Vérifiez l'installation de la plateforme.
- Gardez l'horloge du serveur à l'heure, avec NTP. La demande porte l'heure du serveur.
- La demande hors ligne ne débloque rien par elle-même. Les sauvegardes reprennent à l'import de la licence, pas à l'export de la demande.