Aller au contenu

Maîtriser ce que le greffon JetBrains écrit et envoie

Où le greffon lit et écrit sur le poste, pourquoi aucune télémétrie n'en part, et ce que contient le rapport de diagnostic écrit sur le poste.

Cette page répond à une question d’audit : sur un poste de développeur, qu’est-ce que ce greffon touche, et qu’est-ce qui sort du poste ?

Les valeurs exactes des réglages cités ici (libellé, défaut, fichier de persistance) sont dans la référence du greffon JetBrains, générée depuis le code.

Par défaut, le greffon lit et écrit dans ~/.lemniscate : configuration, sessions et journaux.

Pour le déplacer, posez la variable d’environnement LEMNISCATE_GLOBAL_DIR avant de démarrer l’IDE, et non depuis un terminal ouvert dans l’IDE :

Fenêtre de terminal
export LEMNISCATE_GLOBAL_DIR=/opt/lemniscate/dev-42

L’action qui ouvre le journal du cœur depuis l’IDE (Open Logs) suit cette variable et cherche logs/core.log dans le dossier déplacé. Si le fichier n’existe pas encore, elle affiche une notification qui le dit.

À la première lecture, si aucune configuration n’existe, le greffon écrit une configuration d’exemple, qui ne désigne pas votre passerelle. Posez la configuration qui désigne votre passerelle avant la première session : le poste ne connaît que cette adresse (livre blanc sécurité V3, section 3.3).

Le greffon et le cœur peuvent tous deux écrire cette configuration par défaut. Pour un audit, lisez le fichier présent sur le poste plutôt que le gabarit du code.

Le seul flux du poste lié à Lemniscate va vers votre passerelle. Rien ne part vers l’éditeur : ni télémétrie, ni rapport d’erreur, ni vérification de licence (livre blanc sécurité V3, sections 3.3 et 11.3).

Le greffon n’émet aucune télémétrie. La bibliothèque d’émission n’est pas empaquetée dans l’archive remise à un client : il n’y a rien à couper. Les erreurs sont écrites dans le journal de l’IDE, sur le poste, et s’arrêtent là. Le tutoriel Vérifier qu’aucune donnée ne sort fait passer le contrôle d’artefact sur l’archive.

Le greffon n’affiche aucun bouton d’envoi d’incident. La plateforme JetBrains n’en propose un dans sa fenêtre d’erreurs que si le greffon déclare un point d’extension errorHandler ; le greffon n’en déclare aucun. Il n’émet pas non plus de mesure d’usage.

Le greffon sait produire un rapport de diagnostic local. Cherchez l’action Write a Diagnostic Report on This Machine (Find Action, Ctrl+Shift+A).

Elle demande au cœur d’écrire un dossier daté sous <dossier du produit>/diagnostics/, puis ouvre son fichier de tête dans l’éditeur. Rien n’est envoyé, et aucun réglage n’ajoute un envoi. Le produit ne connaît aucune destination pour ce dossier ; si le rapport doit parvenir à quelqu’un, vous le transmettez vous-même.

Le dossier tient en trois fichiers de texte ordinaire :

  • LISEZ-MOI.md : ce que le dossier contient, et ce qui en a été retiré ;
  • rapport.md : version du produit, environnement hôte, profil de construction, état du cœur, nom du modèle et de la passerelle, politique d’entreprise en vigueur, dernières erreurs ;
  • journal.txt : les 200 dernières lignes du journal du produit.

Le contenu est expurgé avant écriture : adresses (URL), chemins de fichiers, adresses de courriel et suites de caractères assez longues pour être une clé sont remplacées par une étiquette neutre. Le rapport nomme le modèle et la passerelle ; il ne collecte ni la clé d’accès, ni l’adresse de la passerelle, ni le contenu de vos fichiers. Ce sont des fichiers texte : vous pouvez les relire avant de les transmettre.

Le produit ne supprime pas ces dossiers. Supprimez-les quand ils ne vous servent plus.

Lemniscate ne gère pas d’identités : il s’appuie sur les vôtres. Le développeur est authentifié auprès de votre annuaire (OpenID Connect), par la passerelle, et sa session est liée à son identité et à un projet (livre blanc sécurité V3, section 6.1).

Il n’existe pas de compte chez l’éditeur. Le greffon n’appelle aucun service de l’éditeur, et aucune vérification de licence ne part du poste (livre blanc sécurité V3, section 11.3). L’authentification emprunte le seul flux du poste, celui qui va vers votre passerelle.

Le greffon déclare Ctrl+J, Ctrl+Maj+J et Ctrl+I (Cmd sur macOS) dans son descripteur. Il ne modifie pas la configuration clavier de l’IDE : quand une autre action revendique la même combinaison, elle la garde, et le conflit se règle dans Réglages › Keymap.