Qu’est-ce que « Workspace Trust » dans Visual Studio Code ? –
Visual Studio Code v1.57 lancé en mai 2021 avec une nouvelle fonctionnalité « Workspace Trust ». Il s’agit d’un mécanisme de sécurité qui vous aide à éviter l’exécution accidentelle de code lorsque vous ne pouvez pas faire confiance aux origines d’un référentiel.
Workspace Trust est actif par défaut. Lorsque vous ouvrez un nouveau dossier, Code affiche une boîte de dialogue vous demandant de faire confiance aux fichiers qu’il contient. Si vous dites oui, l’éditeur fonctionnera normalement. Si vous appuyez sur non, Code entrera dans un nouveau « mode restreint » avec des fonctionnalités réduites.
Sommaire
Qu’est-ce qui est désactivé en mode restreint ?
Le mode restreint est destiné à empêcher l’exécution de code non fiable. Les fonctionnalités de Visual Studio qui exécutent les fichiers seront désactivées pour vous protéger contre les menaces que vous n’avez pas entièrement contrôlées.
Les fonctionnalités de débogage sont désactivées, vous empêchant de lancer accidentellement un exécutable téléchargé. Visual Studio désactivera également les tâches définies dans le fichier d’espace de travail. Tâches dans un .vscode
peut exécuter des binaires et des scripts, donc un dépôt en contenant un est un risque pour la sécurité.
Toutes les extensions utilisateur qui pourraient exécuter du code seront désactivées ou placées dans un état de fonctionnalité limitée. Certains paramètres de l’espace de travail peuvent également être remplacés, pour limiter la portée des fichiers téléchargés .vscode
des dossiers.
L’utilisation du mode restreint vous permet d’inspecter les parties critiques d’un projet récemment téléchargé. Vous avez la possibilité de vérifier qu’il n’y a pas de comportements suspects, sans risquer l’exécution réelle du code. Une fois que vous quittez le mode restreint, vos paramètres habituels seront appliqués et le débogage sera réactivé.
Lorsque Workspace Trust est activé, une invite s’affiche chaque fois que vous ouvrez un nouveau dossier dans un emplacement non approuvé. Vous devrez choisir d’activer toutes les fonctionnalités ou d’ouvrir l’espace de travail en mode restreint.
Pourquoi s’embêter?
Visual Studio Code est devenu un puissant éditeur de code prenant en charge des milliers d’extensions. Beaucoup de ces outils tiers s’exécutent automatiquement et s’ajoutent dans votre fichier de paramètres d’espace de travail. Ce fichier est souvent soumis au contrôle de source afin qu’il puisse être partagé avec les membres de l’équipe.
Il est concevable qu’un mauvais acteur rusé puisse créer un référentiel qui semble authentique mais qui exécute un code malveillant lorsqu’il est chargé dans l’éditeur. Workspace Trust est une réponse à cette possibilité. Il vous offre une plus grande sécurité lorsque vous inspectez des logiciels open source et d’autres codes reçus de tiers.
Désactivation de l’approbation de l’espace de travail
Workspace Trust vous aide à éviter les exécutions de code involontaires potentiellement dangereuses. L’utilisation de cette fonctionnalité vous offre une couche de défense supplémentaire contre les référentiels inconnus. Néanmoins, vous pourriez trouver les invites ennuyeuses si vous consommez régulièrement du code provenant de nouvelles sources.
Vous pouvez désactiver complètement Workspace Trust en définissant le security.workspace.trust.enabled
réglage sur false
. Vous pouvez le trouver dans l’interface utilisateur en cliquant sur Fichier > Préférences > Paramètres et en recherchant « confiance de l’espace de travail ». La case à cocher apparaîtra comme « Sécurité > Espace de travail > Confiance : Activé ». Si vous souhaitez uniquement un lancement unique sans Workspace Trust, ajoutez le --disable-workspace-trust
indicateur de ligne de commande.
Personnalisation de l’approbation de l’espace de travail
Workspace Trust propose quelques paramètres pour vous permettre d’affiner son comportement. Utilisez la procédure décrite ci-dessus pour afficher les paramètres Workspace Trust dans l’interface utilisateur.
« Fenêtre vide » contrôle ce qui se passe lorsque vous utilisez une fenêtre sans dossier ouvert. Lorsque la case est cochée, la fenêtre sera considérée comme approuvée par défaut. Sinon, vous devrez lui faire confiance manuellement comme un dossier normal.
Le paramètre « Fichiers non approuvés » définit ce qui se passe si vous Fichier> Ouvrir un fichier à partir d’un emplacement non approuvé dans une fenêtre approuvée. Le comportement par défaut consiste à demander avant de continuer. Vous pouvez modifier cela pour toujours ouvrir le fichier ou le forcer dans une nouvelle fenêtre qui n’est pas automatiquement approuvée.
Un autre paramètre vous permet de remplacer la façon dont les extensions répondent à Workspace Trust. Cela doit être réglé manuellement dans votre settings.json
déposer. Ajouter un extensions.supportUntrustedWorkspaces
key avec un objet JSON comme valeur. Ajoutez des ID d’extension en tant que clés dans cet objet. Chaque extension peut avoir true
, limited
ou alors false
comme sa valeur.
{ "extensions": { "supportUntrustedWorkspaces": { "my-extension": true } } }
Une extension répertoriée comme true
volonté toujours être activé, même dans un espace de travail non fiable. Extensions avec false
ne se chargera que dans les espaces de travail de confiance. limited
les extensions seront ajoutées aux espaces de travail non approuvés mais avec la fonctionnalité « de confiance » désactivée. Vous ne pourrez pas utiliser les tâches fournies par ces extensions.
Gestion des dossiers de confiance
Vous pouvez afficher et gérer les dossiers que vous avez marqués comme approuvés à partir de Visual Studio Code. Appuyez sur Ctrl+Maj+P pour afficher la palette de commandes. Recherchez « confiance de l’espace de travail » et sélectionnez l’élément « Espaces de travail : Gérer la confiance de l’espace de travail » dans le menu.
Cet écran affiche l’état de confiance de votre fenêtre actuelle. Vous pouvez passer en mode restreint en appuyant sur « Ne pas faire confiance ». Vous pouvez également appuyer sur le bouton « Confiance » pour activer toutes les fonctionnalités si vous êtes actuellement dans un état restreint.
La section « Dossiers et espaces de travail de confiance » énumère tous les répertoires que vous avez marqués comme étant de confiance. Vous pouvez révoquer la confiance d’un emplacement en cliquant dessus et en appuyant sur le bouton Supprimer « X » sur la droite.
La confiance est héritée par tous les sous-répertoires. Faire confiance à un dossier de niveau supérieur tel que /home/me/projects
signifiera que tous vos référentiels sont automatiquement approuvés. Cela compromet l’efficacité du système Workspace Trust.
Conclusion
Workspace Trust est une nouvelle protection de sécurité prometteuse pour les utilisateurs de Visual Studio Code. Les dangers de l’exécution de code non intentionnelle par les IDE commencent tout juste à gagner en visibilité. Bien que certains puissent trouver les invites de confiance frustrantes, elles peuvent aider à protéger votre machine contre les sources dangereuses.
Il est peu probable que vous souhaitiez qu’un espace de travail reste en mode restreint pendant une période prolongée. Bien que vous puissiez toujours afficher et modifier des fichiers, vous perdrez de nombreuses fonctionnalités les plus puissantes de Visual Studio Code. Il est préférable d’examiner les exécutables, de créer des scripts et .vscode
fichiers dans un référentiel, recherchez tout danger, puis faites confiance à l’emplacement une fois que vous êtes sûr qu’il se comportera comme prévu.