Annexe — Emplacements de fichiers, ports et environnement

Cette annexe rassemble dans des tables de référence les faits concrets disséminés dans le reste du manuel : emplacements sur le disque, ports réseau, variables d'environnement et arguments de lancement, ainsi qu'un aide-mémoire de la VM invité. Tout ce qui figure ici correspond à la version distribuée (version 4.3.0, identifiant de bundle io.bromure.agentic-coding). Pour les commandes qui lisent et écrivent ces éléments, voir Automatisation et la CLI ; pour ce qui est créé au moment de l'installation, voir Installation.

Espaces réservés utilisés ci-dessous : <uuid> est l'identifiant d'un espace de travail, <version> une version d'outil épinglée, <org>--<name> un dépôt de modèle et <host-UUID> un hôte distant enregistré.

Emplacements sur le disque

Tout ce que l'application possède réside sous un seul répertoire de support, plus une poignée de fichiers en dehors et quelques éléments de trousseau (Keychain). Les tables ci-dessous sont dédupliquées et regroupées ; un chemin se terminant par / est un répertoire.

Le répertoire de support

La racine de support de l'application est ~/Library/Application Support/BromureAC/. Les chemins ci-dessous sont relatifs à celle-ci.

CheminContient
base.imgL'image de base Ubuntu 24.04 que chaque espace de travail clone (24 Go logiques, ~6–8 Go physiques).
efivars.binLe magasin de variables EFI avec lequel l'image de base démarre.
base.versionEmpreinte de version de l'image installée, p. ex. 200 ou 200.1.
image-state.jsonProvenance de l'image et UUID des étapes de post-installation appliquées.
img-catalog.jsonCopie en cache du catalogue d'images téléchargé.
browser-img-catalog.jsonCatalogue en cache pour l'image du navigateur intégré.
catalog.jsonManifeste de catalogue distant en cache pour les modèles d'inférence locaux.
base.img.partial, base.img.gz.partial, efivars.partialFichiers d'installation transitoires ; leur présence signifie qu'une installation est en cours ou a été interrompue.
alpine-vmlinuz, alpine-initramfs, alpine-initramfs-shimmedFichiers de l'installateur Alpine netboot en cache, utilisés par la compilation locale.
browser/La copie propre d'AC de l'image du navigateur Alpine/Chromium (linux-base.img, vmlinuz, initrd) lorsque la copie de Bromure Web est absente.
browser-profiles/<uuid>/image/profile.imgDisque de profil Chromium persistant chiffré (« Rester connecté aux sites web »).
ca/cert.pem, ca/key.pemL'autorité de certification racine (Root CA) Bromure Agentic Coding propre à l'installation (mode de clé 0600). Supprimez le répertoire ca/ pour la faire tourner.
control.sockSocket de contrôle Unix réservé au propriétaire (0600) sur lequel la CLI et le plan de contrôle communiquent en HTTP.
profile-macs.jsonLiaisons MAC déterministes par espace de travail.
dhcp-leases.sqliteBaux DHCP persistants pour le commutateur NAT partagé.
default-ssh/id_ed25519.raw, default-ssh/id_ed25519.pubPaire de clés SSH partagée par défaut, copiée dans chaque nouvel espace de travail.
profile-template.json, profile-template.encLe modèle « Valeurs par défaut » des Préférences dont héritent les nouveaux espaces de travail (conservé hors de profiles/ pour ne jamais apparaître dans le sélecteur).
automations.jsonAutomatisations planifiées ainsi que l'historique d'exécution (max 1000 enregistrements), les prochaines heures de déclenchement et les repères de sondage d'événements.
grid-layout.jsonAppartenance à la Grille de terminaux.
engine-master.keySecret maître de 32 octets pour les clés du moteur d'inférence locale par VM.
engine-spawn.jsonConfiguration de génération des processus enfants du moteur d'inférence locale (modèles, budget mémoire, port).
fake-salt.binSel de 32 octets propre à l'installation pour dériver les faux jetons (0600). Le supprimer fait tourner tous les leurres sur ce Mac.
secrets-master.keyClé maître AES-256 de repli (0600), utilisée uniquement lorsque le trousseau Data Protection est inaccessible.
claude-subscription.enc, codex-subscription.enc, grok-subscription.encMagasins OAuth d'abonnement détenus par l'hôte, chiffrés en AES-GCM (valeur par défaut partagée plus remplacements par espace de travail), 0600.
cloudflared/<version>/cloudflaredBinaire cloudflared épinglé et vérifié par somme de contrôle, avec un lien symbolique current à côté.
ghostty/Configurations de terminal générées (de base plus par espace de travail).

Stockage par espace de travail

Chaque espace de travail est un répertoire autonome situé à profiles/<uuid>/ sous la racine de support. Voir Espaces de travail et Concepts pour savoir comment ils sont utilisés.

Chemin (sous profiles/<uuid>/)Contient
profile.jsonDéfinition de l'espace de travail, y compris le bloc de politique supplyChain ; les clés d'API socket.dev et Delpi y sont stockées côté hôte et ne sont jamais copiées dans la VM. Seuls les champs non par défaut sont écrits.
secrets.encSecrets de l'espace de travail chiffrés en AES-GCM (chmod 600).
disk.imgDisque système — un clone APFS en copie sur écriture de base.img.
home.imgImage ext4 creuse contenant /home/ubuntu (modèle de home moderne).
home/Répertoire home virtiofs hérité (espaces de travail antérieurs à la mise à niveau).
boot-home/Minuscule home d'amorçage partagé lors des démarrages en modèle ext4.
home.pre-ext4/Sauvegarde du home conservée après la mise à niveau du stockage.
checkpoints/, checkpoints/home/Clones de retour arrière du disque et du home dont le démarrage a été prouvé.
vm.stateInstantané de la RAM de la VM suspendue.
tabs.jsonDisposition des onglets enregistrée, honorée uniquement lorsque vm.state existe.
machine-identifier.binIdentité de machine VZ persistante (requise pour restaurer une VM suspendue).
compromised.flagMarqueur d'effacement au prochain lancement, positionné après la détection d'une fuite d'identifiant.
meta-share/Partage de configuration invité en lecture seule par lancement (api_key.env, proxy.env, le certificat CA, agents, configurations MCP).
outbox/Partage d'événements invité→hôte accessible en écriture par lancement.
agent/ (et agent/imported/), ssh/Matériel de clé SSH par espace de travail ; les clés importées résident sous agent/imported/, ssh/ est le répertoire hérité.

Modèles et détecteurs

Chemin (sous la racine de support)Contient
models/<org>--<name>/Poids des modèles d'inférence MLX téléchargés (disposition plate par dépôt).
models/<org>--<name>/.incompleteSentinelle de téléchargement en cours ou interrompu.
Models/prompt-injection/Ressources du détecteur PromptGuard (model.onnx, fichiers de tokeniseur, remplacements facultatifs bromure-injection.json).
Models/claudemd-guard/Ressources du détecteur de fichiers de règles ModernBERT.
traces/YYYY-MM-DD/<sessionID>.jsonlMétadonnées de trace par session, un enregistrement JSON par ligne.
traces/YYYY-MM-DD/<sessionID>/<recordID>.req.enc, .res.encCorps de requête/réponse capturés, chiffrés en AES-GCM (0600).

Inscription, accès à distance et client riche

Chemin (sous la racine de support)Contient
managed/install.jsonIdentité d'inscription : ID d'installation, slug de l'espace de travail, utilisateur, URL du serveur, nom de l'appareil, date d'inscription.
managed/leaf.crtCertificat feuille mTLS (PEM, inspectable).
managed/leaf.serialPointeur vers l'entrée du trousseau contenant la clé privée de la feuille actuelle.
managed/ca.crtCertificat CA de l'organisation de l'espace de travail (PEM).
managed/healthSanté d'inscription persistée (ok / tokenRejected / revoked).
remote/hostkey_ed25519, remote/hostkey_ed25519.pubClé d'hôte du serveur SSH intégré (mode de répertoire 0700, clé 0600).
remote/authorized_keysClés publiques autorisées à franchir la porte d'entrée SSH (0600).
remote/overlay-keyRemplacement facultatif de l'accord de touches de superposition pour le menu SSH distant.
remote-client/id_ed25519, .pubPaire de clés client SSH du client riche (commentaire bromure-ac-fatclient).
remote-client/known_hostsÉpinglages de confiance à la première utilisation des clés d'hôte distant.
remote-client/hosts.jsonServeurs distants enregistrés (« Serveurs récents »).
remote-client/hosts/<host-UUID>/grid-layout.json, automations.jsonPersistance du miroir par hôte, afin qu'une grille distante n'écrase jamais la grille locale.

Remarque : L'arborescence remote-client/ se déplace avec CFFIXED_USER_HOME, ce qui permet d'exécuter côte à côte deux instances isolées pour les tests.

En dehors du répertoire de support

CheminContient
~/Library/LaunchAgents/io.bromure.agentic-coding.boot.plistLaunchAgent de démarrage à l'ouverture de session, écrit lorsqu'un espace de travail active « Démarrer cette VM à l'ouverture de session ».
<app>/Contents/Library/LaunchDaemons/io.bromure.fatclient-tunnel.plistDémon de tunnel privilégié intégré, enregistré à la demande via SMAppService.
/var/run/io.bromure.fatclient-tunnel.sockSocket du démon de tunnel privilégié (créé par root, chmod 600, dont le propriétaire est l'utilisateur de la console).
/tmp/bromure-ac-cm-<first-12-of-host-UUID>Socket SSH ControlMaster par hôte (conservé dans /tmp car le chemin de support dépasse la limite de longueur AF_UNIX).
/tmp/bromure-repair.logJournal de débogage du proxy de réparation d'inférence locale (uniquement avec BROMURE_REPAIR_DEBUG).
/usr/local/bin/bromure-cliLien symbolique CLI facultatif vers le binaire de l'application, proposé une fois au premier lancement.
<NSTemporaryDirectory>/bromure-ac-agent-<pid>.sockSocket ssh-agent privé côté hôte de Bromure.
$TMPDIR/bromure/session-<uuid>.img (et -aux.img)Clones de VM de navigateur éphémères en copie sur écriture, supprimés au démontage.
<app temp dir>/bromure-files/<profile-id>/Cache de téléchargement pour les fichiers invités ouverts depuis le navigateur de fichiers.
~/Library/Application Support/Bromure/Répertoire de support de Bromure Web ; AC y lit son image de navigateur lorsqu'elle est présente.
~/.cache/bromure-ghosttyCache de la chaîne d'outils Zig utilisé uniquement lors de la compilation du framework de terminal à partir des sources.

Éléments du trousseau et domaine des valeurs par défaut

Les secrets qui doivent survivre avec une protection au niveau du système d'exploitation résident dans le trousseau macOS, et non sur le disque.

Service de trousseauCompteContient
io.bromure.agentic-coding.master-keyv1La clé maître AES-256 du coffre à secrets (trousseau Data Protection).
io.bromure.agentic-coding.ssh-key-passphrases<profileUUID>/<filename>Phrases secrètes des clés SSH importées.
io.bromure.agentic-coding.managed-installinstall-token, leaf-cert-key-<serial>Jeton porteur d'inscription et clés privées de feuille par numéro de série.

Toutes les UserDefaults de l'application résident dans le domaine io.bromure.agentic-coding (lues et écrites avec defaults read/defaults write).

Ports réseau et sous-réseaux

Ports TCP et de bouclage

Bromure Agentic Coding n'ouvre par défaut aucun port entrant fixe. Les deux services facultatifs ci-dessous sont désactivés tant que vous ne les activez pas ; les autres sont réservés au bouclage et soit dynamiques, soit internes.

PortObjetLié où
9223 (par défaut)API HTTP d'automatisation et backend bromure-cli mcp. Désactivé par défaut (automation.enabled) ; choisi à un incrément du 9222 du produit navigateur afin que les deux applications puissent s'exécuter côte à côte. Sert GET /health.127.0.0.1 (configurable via automation.bindAddress ; les liaisons non-bouclage ne sont pas authentifiées et sont déconseillées).
2222 (par défaut)Porte d'entrée facultative d'accès à distance SSH. Désactivée par défaut ; configurable sur tout port ≥ 1024.0.0.0.0 par défaut (configurable via remoteAccess.bindAddress).
2850028599Écouteur de rappel OAuth MCP (http://127.0.0.1:<port>/callback).127.0.0.1.
dynamiqueMoteur d'inférence locale, alloué au premier lancement pour éviter toute collision avec Ollama/LM Studio sur le 11434.127.0.0.1 (jamais 0.0.0.0).
dynamiqueProxy de réparation d'appels d'outils d'inférence locale.127.0.0.1.
éphémèreRedirecteur SOCKS5 par hôte distant utilisé par le volet de navigateur du client riche.Lié à 0.0.0.0 mais filtré par pair au bouclage plus 192.168.127.x.

Deux points d'accès de bouclage existent à l'intérieur de l'invité, pas sur le Mac : 127.0.0.1:8080 (le proxy HTTP(S) intra-VM que chaque shell exporte comme HTTPS_PROXY) et 127.0.0.1:11434 (où apparaît le moteur d'inférence locale côté hôte, via un pont vsock).

L'installation elle-même n'ouvre aucun port TCP ; le proxy de paquets de la compilation de l'image de base lie un port localhost éphémère par compilation.

Sous-réseaux du réseau virtuel

Sous-réseauObjet
192.168.64.0/24Sous-réseau NAT par défaut pour les VM d'espace de travail (passerelle .1, pool DHCP .2.254, baux de 24 h). Relocalisé automatiquement si le réseau local du Mac l'utilise déjà.
192.168.65.0/24192.168.126.0/24Plage vers laquelle les instances de Bromure Web se relocalisent, évitant les collisions entre AC et Web.
192.168.127.0/24Sous-réseau local épinglé de la VM de navigateur du client riche (passerelle .127.1), afin que la passerelle soit prévisible.
100.64.<n>.0/24Sous-réseaux alias CGNAT pour les collisions de sous-réseau de parc — implémentés et testés mais pas encore raccordés au chemin d'exécution (un seul hôte distant est la configuration prise en charge).
10.98.<unit>.0/30Réseaux de liaison point à point utilisés par le démon de tunnel utun privilégié.

Ponts vsock hôte↔invité

L'hôte et l'invité communiquent via des sockets virtio (vsock), qui n'ont pas de liaison IP — ce sont des canaux numérotés entre l'hôte (CID 2) et chaque invité. Il s'agit de plomberie interne, listée ici à des fins de diagnostic.

Port vsockPont
5800Agent d'exécution de shell — alimente bromure-cli exec, la route exec du socket de contrôle et le volet d'explorateur de fichiers.
5010Relais de rappel OAuth de bouclage (renvoie les redirections OAuth vers les CLI intra-VM).
5830Côté hôte du serveur MCP de navigateur intégré (le shim stdio de l'invité s'y connecte en sortie).
8443Proxy HTTPS MITM — la sortie de l'invité.
8444Pont ssh-agent (soutient SSH_AUTH_SOCK).
8445Assistant AWS credential_process.
8446Agent de jeton d'abonnement Claude, et le pont d'inférence locale côté hôte (invité 127.0.0.1:11434).
8447Agent de jeton d'abonnement Codex/ChatGPT.
5000Agent de configuration de la VM de navigateur (configuration JSON hôte→invité à la réclamation).
5100Pont de transfert de fichiers de la VM de navigateur (trame max 16 Mo, fichier max 10 Go).
5200Pont Chrome DevTools Protocol de la VM de navigateur (captures d'écran, eval).
5300 / 5400Émetteur de liens / webcam de la VM de navigateur.
5810Pont d'onglets natifs de la VM de navigateur.
5900Pont de trace réseau de la VM de navigateur.

Variables d'environnement et arguments de lancement

Celles-ci influencent l'application au lancement. La plupart servent au débogage, aux tests ou à la compilation à partir des sources ; la colonne Public indique à qui chacune s'adresse. Définissez une variable d'environnement avant de lancer le binaire, ou passez un argument de lancement après lui.

NomEffetPublic
-AppleLanguages "(fr)" (arg. de lancement)Remplacement standard de la locale macOS ; force la langue de l'interface. Retiré avant l'analyse des arguments afin que les relancements forçant la locale fonctionnent.Utilisateur final
BROMURE_DEBUG_CLAUDEDéverrouille les points d'accès de débogage de l'API TCP d'automatisation (/app/state, exec, /vms, /debug/ui-shot, /detect/prompt-injection), permet aux secrets de transiter par les ponts JSON de profil AppleScript/MCP, et est requis pour les outils de VM de bromure-cli mcp --debug.Utilisateur avancé / débogage
BROMURE_AC_DEBUG=1Débogage stderr horodaté pour le moteur d'automatisation, les classificateurs d'injection, le scanner de règles et le pipeline de traces.Débogage
BROMURE_CLI_DEBUGDiagnostics détaillés de connexion au socket de contrôle sur stderr pour les commandes de la CLI.Débogage (CLI)
BROMURE_REPAIR_DEBUGDiagnostics de requête/réponse du proxy de réparation d'inférence locale, ajoutés à /tmp/bromure-repair.log.Débogage (modèles locaux)
BROMURE_INFER_DEBUGStatistiques du moteur par requête (slot, jetons préremplis, TTFT, jetons/s) vers stderr.Débogage (modèles locaux)
BROMURE_FATCLIENT_LOGJournalisation stderr non tamponnée du client riche.Débogage (à distance)
BROMURE_ATTACH_DEBUG=<path>Ajoute également le journal du client riche à un fichier.Débogage (à distance)
BROMURE_INJECTION_COREML=1Exécute les classificateurs d'injection sur le fournisseur CoreML/Neural Engine (par défaut le CPU ; CoreML consomme environ 5× la mémoire résidente à précision identique).Utilisateur avancé
BROMURE_NO_COREMLDésactive de force CoreML pour les classificateurs même si BROMURE_INJECTION_COREML est défini.Utilisateur avancé
BROMURE_GPU_CACHE_GBPlafond du cache tampon GPU MLX en Go (par défaut 4).Utilisateur avancé (modèles locaux)
BROMURE_KVBITS, BROMURE_KVBITS_START, BROMURE_CACHE_SLOTS, BROMURE_THINKINGRéglage de l'inférence locale : bits de quantification du cache KV et seuil, slots de session du cache KV (1–8, par défaut 4) et désactivation de la réflexion silencieuse. Voir Modèles locaux.Utilisateur avancé (modèles locaux)
VISUAL / EDITORÉditeur utilisé par bromure-cli workspaces edit (repli sur vi).Utilisateur final (CLI)
BROMURE_MANAGED_URLRemplace la base de l'API bromure.io utilisée pour l'inscription, le battement de cœur et l'émission de certificats.Administrateur d'entreprise
BROMURE_FATCLIENT_OPENLancement en client riche pur : ignore la fenêtre de configuration au premier lancement (aucune image de base locale nécessaire) et supprime l'invite de lien symbolique bromure-cli.Avancé / tests
BROMURE_IMAGE_CATALOG_BASEDirige les téléchargements d'images vers un catalogue local/de préparation ; désactive également la vérification de signature du catalogue. Réservé aux tests et pipelines.Test / CI
BROMURE_INSTALL_BROWSER_IMAGE=1Télécharge automatiquement la copie d'AC de l'image du navigateur intégré au lancement (le déclencheur normal est le volet de navigateur ou RéglagesNavigateur).Test / débogage
CODESIGN_IDENTITYIdentité de signature de build.sh ; si non définie, repli sur l'ad-hoc - (pas de Gatekeeper, iCloud ni vmnet).Développeur (compilation)
DEVELOPER_ID, APPLE_ID, TEAM_ID, APP_PASSWORDSignature Developer ID et notarisation de package.sh. DEVELOPER_ID est requis ; le trio de notarisation est facultatif (à défaut, un DMG signé mais non notarisé en résulte).Développeur / éditeur
DRY_RUN=1, KEEP_PREVIOUS=1, KEEP_STAGING=1Commutateurs du pipeline de publication/répétition d'images.Éditeur

Le moteur définit également des variables internes pour ses propres processus enfants (BROMURE_ENGINE_KEY, BROMURE_ENGINE_MASTER) et la VM d'enregistrement jetable définit BROMURE_AC_REGISTER ; celles-ci ne sont pas censées être définies à la main.

Clés UserDefaults (defaults write)

Réglages persistants dans le domaine io.bromure.agentic-coding. La plupart ont des équivalents dans l'interface ; les réglages vm.* et de développeur se définissent avec defaults write.

CléEffetPar défaut
automation.enabledActive l'API HTTP d'automatisation de bouclage.false
automation.portPort de l'API d'automatisation.9223
automation.bindAddressAdresse de liaison de l'API d'automatisation.127.0.0.1
remoteAccess.enabledActive la porte d'entrée d'accès à distance SSH.false
remoteAccess.portPort de la porte d'entrée SSH (≥ 1024).2222
remoteAccess.bindAddressAdresse de liaison de la porte d'entrée SSH.0.0.0.0
remoteAccess.passwordAuth, remoteAccess.pubkeyAuthMéthodes d'authentification SSH.les deux activées
vm.homeImageGBTaille apparente (visible par l'invité) d'une nouvelle image home ext4, en Gio (8–1024 ; creuse, elle ne coûte donc rien au départ).64
vm.mtuBridage du MTU de la carte réseau invité — abaissez-le sur les hôtes VPN qui font disparaître les téléchargements de l'installateur.1280
vm.networkMode, vm.bridgedInterface, vm.dnsServersMode réseau du pool de navigateurs, interface pontée et remplacement du DNS DHCP.mode NAT ; les autres non définis
vm.extraChromeFlags, vm.chromeEnvExtraRéglages de développeur ajoutés au lancement Chromium de la VM de navigateur.non défini
cloudflareTunnel.consentedConsentement unique pour exposer des services HTTP via les tunnels rapides Cloudflare.false
cliSymlinkDeclinedPositionné lorsque vous choisissez « Ne plus demander » sur l'offre de lien symbolique bromure-cli.false
ac.sidebarWidth, ac.filePaneOpenLargeur de la barre latérale et état d'ouverture du volet de fichiers persistés.défini par l'application

Aide-mémoire de la VM invité

À l'intérieur d'une VM d'espace de travail en cours d'exécution, vous êtes ubuntu, un utilisateur ordinaire (capable de sudo) dont le home est /home/ubuntu. L'hôte câble les montages et l'environnement afin que les gestionnaires de paquets, les agents et Git fonctionnent sans aucune configuration côté invité. Voir Concepts pour la mécanique.

Points de montage

CheminCe que c'est
/home/ubuntuVotre home — l'home.img ext4 (moderne) ou un partage virtiofs (hérité).
/mnt/bromure-metaPartage de configuration en lecture seule par lancement : api_key.env, proxy.env, le certificat CA, les agents invités, les configurations MCP, les indications de nom d'hôte/MTU.
/mnt/bromure-outboxPartage d'événements invité→hôte accessible en écriture (fichiers d'événements à usage unique lus par l'hôte).
/mnt/bromure-share-NDossiers de projet partagés (jusqu'à 8), également liés symboliquement dans votre home sous ~/<basename>.
/mnt/bromure-meta/bromure-browser-mcp.pyLe shim stdio↔vsock du navigateur-MCP généré, mis en place en lecture seule dans chaque espace de travail.
~/.bromure/pastes/Collages d'images déposés dans le terminal (nettoyés automatiquement après 7 jours).

Environnement défini par l'hôte

VariableValeur / effet
http_proxy, https_proxy, HTTPS_PROXYhttp://127.0.0.1:8080 — le pont intra-VM qui achemine tout le HTTPS de l'invité vers le proxy MITM de l'hôte.
NO_PROXYlocalhost,127.0.0.1,::1.
SSH_AUTH_SOCK/tmp/bromure-agent.sock — ponté via vsock vers le ssh-agent de l'hôte (seules les clés par espace de travail et explicitement importées sont accessibles ; votre agent de connexion macOS n'est jamais exposé).
Variables du bundle CALa CA racine de re-signature est approuvée via les variables de bundle standard pour node, python, go, rust, curl, deno et le SDK AWS.
Clés d'API des agentsANTHROPIC_API_KEY, OPENAI_API_KEY, XAI_API_KEY, GH_TOKEN, GITLAB_TOKEN, DIGITALOCEAN_ACCESS_TOKEN, LINEAR_API_KEY, les variables AWS, et toute variable de manuel/base de données — toutes des valeurs d'espace réservé ; l'hôte substitue le vrai secret sur le fil.
Variables d'agent en mode localLorsqu'un espace de travail est routé vers un modèle local, Claude Code voit ANTHROPIC_BASE_URL=https://bromure.llm, un ANTHROPIC_AUTH_TOKEN par VM, des alias de modèle fixés à la sentinelle bromure-local et CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1.

Avertissement : Chaque identifiant que l'invité peut lire est un leurre. Un faux jeton limité à un hôte qui apparaît dans une requête destinée à un autre hôte est la signature d'une exfiltration et déclenche la détection de compromission — il n'authentifie jamais rien.