Claude Code 2.1.221 permet désormais aux utilisateurs de Linux et WSL2 de masquer les fichiers d'identification avant qu'une commande en bac à sable ne puisse les lire. Cette fonctionnalité fournit à la commande une copie sentinelle inoffensive et ne remplace par le véritable secret que lorsqu'une requête autorisée passe par un proxy.
À quoi ressemble le flux de masquage
- Copie sentinelle – Lorsqu'un fichier est marqué pour le masquage, Claude Code crée un doublon contenant une chaîne de substitution au lieu du secret réel.
- Échange via proxy – Le bac à sable s'exécute derrière un proxy avec terminaison TLS. Si le bac à sable émet une requête correspondant à une entrée de la liste
injectHosts, le proxy remplace la chaîne de substitution par le jeton réel avant que la requête ne quitte la machine. - Gestion des erreurs – Si l'expression régulière d'extraction ne parvient pas à trouver un secret, le bac à sable peut s'interrompre au lieu de continuer avec le fichier original exposé.
Cette approche fonctionne uniquement sur Linux et WSL2 ; macOS utilise actuellement un refus strict par défaut, ce qui signifie que le bac à sable ne peut pas du tout lire le fichier.
Liste de contrôle pour un déploiement sécurisé
Vérifier la version
- Confirmez que vous utilisez Claude Code 2.1.221 ou une version ultérieure. La chaîne de version dans un terminal est la seule méthode fiable ; les fichiers de verrouillage de package peuvent être trompeurs.
Utiliser des jetons jetables
- N'expérimentez jamais avec vos identifiants GitHub ou cloud principaux. Créez un jeton à courte durée de vie qui pointe vers un point de terminaison « canary » inoffensif et révoquez-le instantanément en cas de problème.
Choisir le bon mode de masquage
| Mode | Quand l'utiliser |
|---|---|
| File Deny | Blocage strict ; toute tentative de lecture échoue. |
| Whole-File Mask | Le fichier contient un seul secret (ex: une clé API en texte brut). |
| Structured Mask | Le fichier mélange des secrets avec d'autres données (JSON, YAML, .netrc). Utilisez le mode extract et une regex qui capture le secret dans le groupe 1. Cela permet de maintenir la syntaxe environnante valide pour le programme client. |
Définir des règles d'erreur strictes
- Réglez
onExtractNoMatchsur error. Si la regex ne correspond pas, le bac à sable s'arrête. Le laisser sur la valeur par défaut warn pourrait laisser passer le fichier original sans que cela ne soit remarqué.
Activer la terminaison TLS
- Le proxy doit assurer la terminaison TLS pour effectuer l'échange. Sans terminaison TLS, le proxy ne peut pas voir la charge utile de la requête et la substitution ne s'effectue jamais.
Restreindre la portée des hôtes
- Remplissez
injectHostsavec des noms d'hôtes explicites provenant de vosallowedDomains. Évitez les caractères génériques comme*.example.com; les modèles trop larges augmentent la surface d'attaque et annulent l'objectif du masquage.
Vérifier le résultat
- Examinez les journaux, les arguments de processus et les messages d'erreur pour détecter toute apparition du jeton réel. La sentinelle devrait être la seule valeur qui apparaisse dans ces artefacts.
Les limites à garder à l'esprit
Le masquage sécurise le jeton uniquement vis-à-vis de la vue du système de fichiers de la commande en bac à sable. Cela n'empêche pas la commande d'effectuer des appels réseau arbitraires, et cela ne protège pas non plus contre les outils intégrés de Claude qui peuvent disposer d'accès privilégiés.
L'essentiel
La fonctionnalité de masquage des identifiants de Claude Code 2.1.221 offre aux développeurs Linux et WSL2 un moyen pratique de maintenir les secrets hors des processus en bac à sable.
