Skip to Content

Clés

Programmes, jobs de CI et autres systèmes joignent Cadence.CI avec des jetons. La page Clés, sous Ressources, les liste par type, les crée et les révoque.

Page Clés : jetons d'exécution, jetons d'artefacts et jetons de cluster, chacun dans un tableau, puis les jetons signalés comme divulgués

Types de clés

TypeQui l’utiliseQui le crée
Jeton d’exécutionLes jobs de CI et les programmes qui lancent des runs, en rendent compte et demandent des machines. Il va dans MELODIUM_API_TOKEN.Tout membre
Jeton d’artefactsLes systèmes hors de Cadence.CI qui téléchargent des artefacts, comme un script de déploiement ou un index de paquets. Il lit les artefacts et rien d’autre.Les administrateurs
Jeton de clusterUn cluster que vous opérez vous-même, pour l’enregistrer (voir Déploiement de clusters).Administrateurs et opérateurs

Chaque type a sa section, avec un tableau : l’état de chaque jeton (Actif, Expiré ou Révoqué), son nom, son indice, à quoi il sert, quand il a été créé et quand il expire. Pour un jeton d’artefacts, la colonne Lit dit quels artefacts il lit. Cliquez sur une ligne pour voir les détails du jeton, et le révoquer depuis là.

D’autres pages mènent ici : Obtenir un Jeton de Cluster sur la page Clusters et Obtenir un Jeton d’Artefacts sur la page Stockage ouvrent cette page avec le formulaire de ce type de jeton.

Créer un jeton

  1. Cliquez sur Créer un Jeton à côté du type voulu.
  2. Donnez-lui un nom, et ce que le formulaire demande pour ce type : une description et une date d’expiration pour un jeton d’exécution ; pour un jeton d’artefacts, les artefacts qu’il lit (tous, ceux d’un run, ou ceux dont le nom commence par un préfixe) et son expiration, ou aucune.
  3. Copiez le jeton quand il apparaît. Il n’est montré qu’une fois : Cadence.CI ne garde que son SHA-256 et un indice pour le reconnaître.

Le formulaire d'un jeton d'artefacts, ouvert depuis Obtenir un Jeton d'Artefacts

Gardez le jeton dans un coffre à secrets, comme les variables de votre CI ou un gestionnaire de secrets, jamais dans un dépôt. Si vous le perdez, créez-en un autre et révoquez celui qui est perdu.

Cadence.CI montre chaque jeton par son indice, comme cad_r_...k3Pz : son préfixe et ses 4 derniers caractères. Comparez-le avec la fin du jeton dans vos variables de CI pour savoir lequel elles contiennent.

Format

Chaque jeton a la forme cad_<kind>_<random>_<checksum> :

  • cad : le préfixe des jetons Cadence.CI ;
  • <kind> : ce à quoi sert le jeton ;
  • <random> : 48 caractères de 0-9A-Za-z, tirés d’un générateur aléatoire cryptographique ;
  • <checksum> : le CRC32 (IEEE) de cad_<kind>_<random>, écrit en 6 chiffres base62, le plus significatif en premier, avec l’alphabet 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz. Il distingue un jeton d’une imitation sans appeler Cadence.CI.
TypeJeton
ula session d’un membre dans le tableau de bord
run jeton d’exécution, avec lequel les jobs CI et les programmes lancent et rapportent des runs
cun jeton de cluster, qui enregistre auprès de Cadence.CI un cluster que vous exploitez
vle jeton de la machine qui exécute un run, valable pour ce run seulement
ccle jeton d’un add-on Clever Cloud
ble jeton de démarrage de la machine d’un run, valable 15 minutes et échangé une seule fois, au démarrage, contre son jeton v
aun jeton d’artefacts, qui ne lit que des artefacts
csun jeton de portée de cache, qui nomme une portée dans les demandes de run ; il n’authentifie rien

Cette expression reconnaît tous les jetons Cadence.CI, des types actuels comme futurs :

\bcad_[a-z]{1,2}_[0-9A-Za-z]{48}_[0-9A-Za-z]{6}\b

Vérifier un jeton

GET https://api.melodium.tech/0.1/token/check, avec le jeton en bearer, répond 200 avec son type, comme {"kind": "run"}, quand le jeton est valide, et 401 sinon. Il ne modifie rien. Les types s’appellent user, run, cluster, machine, clever_cloud, bootstrap, artifact et cache_scope.

curl -H "Authorization: Bearer $TOKEN" https://api.melodium.tech/0.1/token/check

Quand un jeton fuit

Les scanners de secrets reconnaissent les jetons Cadence.CI. Quand GitHub ou GitLab en trouvent un dans un lieu public, comme un dépôt, un paquet ou des journaux de CI, ils le signalent à Cadence.CI, qui le révoque aussitôt :

  • une session : le membre reçoit un email ;
  • un jeton d’exécution ou de cluster : les administrateurs de l’organisation reçoivent un email qui nomme le jeton et l’endroit où il a été trouvé, car les jobs qui l’utilisent ne fonctionnent plus tant qu’il n’est pas remplacé ;
  • le jeton de la machine d’un run : le run est averti, et les administrateurs reçoivent un email ;
  • un jeton d’add-on Clever Cloud, le jeton de démarrage de la machine d’un run, ou un jeton d’artefacts : les administrateurs reçoivent un email.

Sur la page Clés, un jeton révoqué indique qu’il a fuité, sous sa ligne dans le tableau, avec un lien vers son signalement et un bouton pour créer un remplaçant. Les administrateurs voient chaque signalement dans Jetons signalés comme divulgués, en bas de la page : le type et l’indice du jeton, qui l’a signalé, où il a été trouvé, quand, et ce qui a été fait.

Quiconque trouve un jeton peut le faire révoquer, jusqu’à 100 jetons à la fois :

curl -X POST https://api.melodium.tech/0.1/token/revoke \ -H "Content-Type: application/json" \ -d '{"tokens": ["cad_r_..."]}'

La réponse est toujours 202, que les jetons aient existé ou non.

Les deux points d’accès sont limités à 120 requêtes par minute et par adresse.

Jetons antérieurs au format

Les jetons créés avant le 2026-10-16 n’ont pas le préfixe cad_, les scanners de secrets ne peuvent donc pas les reconnaître. Leur indice commence par ... sur la page Clés. Ils sont acceptés jusqu’au 2027-01-31 inclus, et refusés à partir du 2027-02-01 : remplacez-les avant.

Pour aller plus loin