Aller au contenu

Découverte

Nécessite @openlatch/client 0.11.12 ou une version ultérieure

La découverte place sous OpenLatch les agents IA des machines que gère votre organisation, sans demander à personne d’installer quoi que ce soit. Vos administrateurs déploient un script de découverte avec l’outil de gestion de parc qu’ils utilisent déjà. Sur chaque machine, une analyse s’exécute dans la session de chaque utilisateur. Quand elle trouve un agent qu’OpenLatch connaît, elle installe le client pour cet utilisateur et l’inscrit avec votre clé d’organisation. Dès lors, les agents de cet utilisateur atteignent le point de décision comme ceux de toute machine inscrite.

La découverte couvre les machines que votre outil de gestion de parc atteint. Trouver des agents sur des machines que votre outil ne gère pas n’est pas disponible.

Fonctionnement de la découverteDéployée une fois avec le privilège système, la découverte analyse dans la session de chaque utilisateur et, quand elle trouve un agent, inscrit le client pour cet utilisateur. Seul le client inscrit envoie quelque chose.Outil de gestion de parcDéploiement, une fois, avec le privilège systèmeAnalyse dans la session de chaque utilisateur, en son nomplanification par utilisateurAgent trouvéRien trouvéClient installé et inscrit pour cet utilisateurRésultat conservé sur la machineConsole OpenLatchcanal d’événements existant
Figure 1. Déployée une fois avec le privilège système, la découverte analyse dans la session de chaque utilisateur et, quand elle trouve un agent, inscrit le client pour cet utilisateur. Seul le client inscrit envoie quelque chose.
ÉtapeOù elle s’exécuteCe qui se passe
DéploiementUne fois par machine, avec le privilège système, par votre outil de gestion de parcLe script se copie dans un dossier que seuls les administrateurs peuvent modifier, écrit le fichier de clé, enregistre une planification qui s’exécute dans la session de chaque utilisateur, et la démarre dans les sessions déjà ouvertes. Il n’analyse jamais, n’écrit jamais dans le dossier personnel d’un utilisateur et n’exécute jamais le client
AnalyseDans la session de chaque utilisateur, en son nom, toutes les 24 heures sauf si vous fixez un autre intervalleL’analyse vérifie une liste courte et fixe d’emplacements où chaque agent laisse une trace. Elle ne parcourt jamais le disque, et n’affiche ni fenêtre, ni console, ni icône, ni notification
InscriptionQuand un agent est trouvé, dans la même sessionL’analyse installe le client pour cet utilisateur, comme le fait le script d’installation, et lance une inscription avec la clé d’organisation. L’utilisateur ne voit rien et ne fait rien
RemontéeDepuis le client inscritLe client envoie ce que l’analyse a trouvé par son canal d’événements existant. L’analyse elle-même n’appelle jamais OpenLatch

La planification exécute la copie locale du script. Elle ne télécharge et n’exécute jamais un script au moment de l’analyse : une nouvelle version n’atteint une machine que lorsque votre outil de gestion de parc la déploie à nouveau.

L’analyse recherche les agents du catalogue d’OpenLatch, avec les mêmes règles que celles du client pour trouver les agents qu’il raccorde. Elle vérifie, dans l’ordre :

VérificationCe qu’elle examine
Dossiers de configurationLe dossier de configuration propre à chaque agent, dans le dossier personnel de l’utilisateur
Configuration déplacéeLes variables qu’un agent utilise pour déplacer sa configuration, telles que l’environnement du planificateur les fournit
ProgrammesUn programme connu dans le chemin de l’utilisateur, un dossier d’installation connu, une application de bureau
Processus en coursUn processus d’agent en cours d’exécution. Il compte comme preuve que l’agent est toujours là, jamais comme une détection : il empêche qu’un agent soit marqué supprimé, et il n’installe ni n’inscrit jamais rien

Seul un fichier absent compte comme absent. Une vérification que le système d’exploitation refuse, ou qui échoue, n’est pas concluante et conserve le résultat précédent.

Un agent du catalogue qui n’est pas encore pris en charge, comme Gemini CLI ou OpenClaw, pas encore raccordés, est tout de même enregistré. Son agent porte le niveau de contrôle Known avec la mention No enforcement adapter : OpenLatch le voit et ne peut pas agir sur lui. Un agent que le client raccorde garde le niveau de contrôle que le client lui donne.

L’analyse conserve ses résultats sur la machine, dans un dossier de découverte du dossier personnel de l’utilisateur, que la désinstallation du client ne touche jamais :

Sur la machineContient
La dernière analyseQuand elle s’est exécutée, avec quel privilège, quelles vérifications ont tourné, et chaque agent du catalogue trouvé avec la vérification qui l’a trouvé, écrite comme un modèle de chemin, jamais comme le chemin développé
Le journal des transitionsChaque changement depuis la dernière analyse : un agent inscrit, inscrit à nouveau ou supprimé, et un changement de la découverte détecté. Il ne nomme l’utilisateur que par son numéro de compte
Le marqueur d’inscriptionSi cet utilisateur avait un client inscrit, son identité d’hôte et son organisation
Le journal de la découverteCe que chaque exécution a fait, de taille limitée

Aucun de ces fichiers ne contient la clé. Une machine sans client installé, où l’analyse ne trouve rien, n’envoie rien. Sur une machine dont le client est déjà inscrit, ce client signale toujours ce qui a changé, comme un agent supprimé de la machine.

Une fois le client inscrit, il envoie le résultat de l’analyse par son canal d’événements existant : ce qui s’est passé (détecté, inscrit, inscrit à nouveau, supprimé, ou un changement de la découverte détecté), comment l’agent a été inscrit, quand il a été découvert, le privilège de l’analyse, l’heure de la dernière analyse et les noms des agents du catalogue trouvés pour cet utilisateur sur cette machine. Il n’envoie jamais un chemin de fichier ni un numéro de compte. La découverte ne lit aucun prompt, aucun contenu de fichier ni aucun historique de navigation, et elle ne bloque ni ne supprime jamais l’installation d’un agent.

OùCe que vous voyez
La fiche de l’agentUn badge Enrolled via discovery, un badge Removed une fois l’agent disparu de sa machine, et un badge De-enrolled quand un administrateur a désinscrit son hôte
L’onglet Host de l’agentLa machine sur laquelle l’agent s’exécute, comment elle a été inscrite, sa dernière analyse et son privilège d’analyse, les agents trouvés, et chaque autre agent de la même machine
Settings › DiscoveryLa commande qui déploie la découverte, et chaque hôte de votre organisation, avec les actions sur chaque hôte. Voir Gérer les hôtes découverts
NotificationsUne notification quand la découverte inscrit un agent, l’inscrit à nouveau après la suppression de son client, ou le trouve supprimé. Aucune notification ne nomme un employé
Le journal d’auditUne entrée pour chacun de ces résultats, et une quand une analyse trouve la planification, le script ou le fichier de clé de la découverte modifiés

Le propriétaire d’un agent découvert vient de votre annuaire, exactement comme pour tout autre agent. Quand un annuaire connecté ne trouve aucune correspondance, l’agent est enregistré comme non attribué, à la racine de l’arborescence de votre organisation.

Supprimer le client ne supprime pas la découverte. Quand un utilisateur, ou quiconque, supprime le client alors que l’agent est toujours là, l’analyse suivante le réinstalle avec la même identité d’hôte et enregistre la nouvelle inscription. La suppression comme la nouvelle inscription restent dans la fiche.

Quand toutes les vérifications trouvent un agent disparu, l’analyse l’enregistre comme supprimé. L’historique de l’agent est conservé, et la fiche retire la marque si l’agent revient.

Un administrateur qui veut tenir une machine à l’écart la retire ou la désinscrit dans Settings › Discovery. Une machine désinscrite n’est jamais inscrite à nouveau par une analyse tant qu’un administrateur n’a pas appuyé sur Re-enrol.

SituationCe qui se passe
Un utilisateur sans session où la planification peut s’exécuterAucune analyse ne s’exécute pour cet utilisateur. Sous Linux, l’utilisateur a besoin d’un gestionnaire utilisateur en cours (une connexion, ou le maintien de session activé) ; sous macOS, un utilisateur qui ne se connecte qu’en SSH n’est pas analysé ; sous Windows, l’utilisateur a besoin d’une ouverture de session interactive. Les agents utilisés uniquement hors d’une telle session ne sont pas découverts
Une configuration déplacée seulement dans un profil de shellL’analyse planifiée ne lit pas les profils de shell, et manque donc cet emplacement
Un programme portable dans un dossier inhabituel, avec sa configuration déplacée et l’agent arrêtéNon détecté
La découverte modifiée sur une machineDétecter que la planification, le script ou le fichier de clé ont changé se fait au mieux, et seule une analyse sur une machine dotée d’un client le signale. Une planification désactivée, une découverte désinstallée et un utilisateur qui n’ouvre jamais de session se ressemblent depuis la console
Une machine jamais inscrite, où l’analyse ne trouve rienLa console ne la liste pas. Les rapports d’exécution de votre outil de gestion de parc montrent quelles machines ont exécuté le script. Une machine inscrite auparavant reste listée avec son hôte

La découverte vise un agent qui se comporte mal, pas un agent malveillant. Elle est conçue pour être visible : sa planification, son script et son journal portent tous le nom OpenLatch, et elle ne résiste à personne qui veut la retirer.

Chaque utilisateur d’une machine est analysé dans sa propre session, et chacun reçoit son propre client : sur ses propres ports de démon et de relais et, sous Windows, avec une tâche du client nommée pour cet utilisateur. Le client d’un utilisateur n’arrête jamais celui d’un autre. L’agent de chaque utilisateur du système est un agent à part entière dans la console.

Sur une machine partagée, les processus locaux de chaque compte peuvent atteindre l’écoute du relais de modèle d’un utilisateur. Le relais ne détient aucun identifiant de fournisseur qui lui soit propre, si bien qu’un appelant n’obtient par lui aucun accès au fournisseur, mais une session d’agent déjà en cours quand le relais de son utilisateur a changé de port peut envoyer une requête à ce qui occupe l’ancien port. Le client signale un tel changement dans sa propre sortie et dans son rapport doctor.

SituationCompte comme un hôte sous licence ?
Une machine jamais inscrite, où l’analyse ne trouve rienNon
Une machine inscrite auparavant, où l’analyse ne trouve plus rienElle compte tant qu’elle reste active, comme tout hôte inscrit
Une machine où l’analyse inscrit le client, y compris pour un agent pas encore pris en chargeOui
Un conteneur dont le point d’entrée inscrit le clientOui, à chaque démarrage : chaque inscription depuis un conteneur neuf est un nouvel hôte tant qu’il reste actif

La découverte peut porter vos hôtes actifs au-delà de votre contrat. Le plafond d’hôtes est souple : l’inscription continue, et les licences vous préviennent. Voir Lire les licences et l’usage.