Visual Studio Code v1.57 jogado fora em maio 2021 com uma nova função de “Confiança no espaço de trabalho”. Este é um mecanismo de segurança que ajuda a evitar a execução acidental de código quando você não pode confiar nas fontes de um repositório.
Confiança no espaço de trabalho está ativo por padrão. Quando eu abro uma nova pasta, O código exibirá uma caixa de diálogo solicitando que você confie nos arquivos que ele contém. Se você disser sim, o editor trabalhará regularmente. Se você pressionar não, Código entrará em um novo “modo restrito” com funcionalidade reduzida.
O que está desabilitado no modo restrito?
O modo restrito destina-se a impedir a execução de código não confiável. Os recursos do Visual Studio que executam arquivos serão desabilitados para ajudar a proteger contra ameaças que você não examinou totalmente.
As funções de depuração estão desativadas, que o impede de lançar acidentalmente um executável baixado. Além disso, o Visual Studio desabilitará as tarefas definidas no arquivo de espaço de trabalho. Tarefas em um .vscode
O arquivo pode executar binários e scripts, então um repositório contendo um é um risco de segurança.
Todas as extensões de usuário que podem executar código serão desabilitadas ou colocadas em um estado de funcionalidade limitada. Algumas configurações do espaço de trabalho também podem ser substituídas para limitar o escopo dos arquivos baixados. .vscode
registros.
Usar o modo restrito permite que você inspecione partes críticas de um projeto recém-baixado. Você tem a capacidade de verificar se não há comportamentos suspeitos, sem arriscar a execução real do código. Depois de sair do modo restrito, suas configurações usuais serão aplicadas e a depuração será reativada.
Quando a confiança do espaço de trabalho está ativada, você verá uma mensagem toda vez que abrir uma nova pasta em um local não confiável. Você precisará selecionar se deseja habilitar todas as funções ou abrir a área de trabalho em modo restrito.
Porque se importar?
O Visual Studio Code se tornou um poderoso editor de código compatível com centenas de extensões. Muitas dessas ferramentas de terceiros são executadas automaticamente e adicionadas ao arquivo de configuração do seu espaço de trabalho. Este arquivo é frequentemente comprometido com o controle do código-fonte, para que possa ser compartilhado com os membros da equipe.
É concebível que um mau ator astuto possa criar um repositório que pareça genuíno, mas execute código malicioso quando carregado no editor.. A Workspace Trust é uma resposta a esta oportunidade. Oferece mais segurança ao inspecionar software de código aberto e outros códigos recebidos de terceiros.
Desativando a confiança no espaço de trabalho
O Workspace Trust ajuda a evitar execuções inadvertidas de código potencialmente perigosas. Usar o recurso oferece uma camada adicional de defesa contra repositórios desconhecidos. Porém, solicitações podem ser irritantes se você consome regularmente código de novas fontes.
Você pode desabilitar o Workspace Trust completamente definindo o security.workspace.trust.enabled
apto para false
. Você pode encontrar isso na interface do usuário clicando em Arquivo> preferências> Configuração e pesquisa “confiança no espaço de trabalho”. A caixa de seleção será exibida como “Segurança> Local de trabalho> Confiança: Habilitado”. Se você deseja apenas uma versão única sem o Workspace Trust, Adicione o --disable-workspace-trust
bandeira de linha de comando.
Personalização da confiança do espaço de trabalho
O Workspace Trust oferece algumas configurações para permitir que você ajuste seu comportamento. Use o procedimento descrito anteriormente para visualizar as configurações de confiança do espaço de trabalho na interface do usuário.
“Janela vazia” controlar o que acontece quando você está usando uma janela sem pastas abertas. Quando a caixa de seleção é preenchida, a janela será tratada como confiável por padrão. Caso contrário, você precisará confiá-lo manualmente como uma pasta normal.
A configuração “Arquivos não confiáveis” define o que acontece se o Arquivo> Abra um arquivo de um local não confiável enquanto estiver em uma janela confiável. O comportamento padrão é avisar antes de continuar. Você pode alterar isso para sempre abrir o arquivo ou forçá-lo para uma nova janela que é automaticamente não confiável.
Outras configurações permitem que você substitua a forma como as extensões respondem ao Workspace Trust. Isso deve ser configurado manualmente em seu settings.json
procedimentos. Adicione um extensions.supportUntrustedWorkspaces
chave com um objeto JSON como seu valor. Adicionar IDs de extensão como chaves neste objeto. Cada ramal pode ter true
, limited
o false
como seu valor.
{ "extensões": { "supportUntrustedWorkspaces": { "minha-extensão": verdade } } }
Uma extensão listada como true
Vai para sempre ser habilitado, mesmo em um espaço de trabalho não confiável. Extensões com false
só carregará em espaços de trabalho confiáveis. limited
As extensões serão adicionadas a espaços de trabalho não confiáveis, mas com funcionalidade “confiável” Desactivado. Você não poderá usar as tarefas fornecidas por essas extensões.
Gerenciar pastas confiáveis
Você pode visualizar e gerenciar as pastas que marcou como confiáveis no Visual Studio Code. Presione Ctrl + Mudança + P para abrir a paleta de comandos. eu pesquisei “confiança no espaço de trabalho” e selecionar o item “Espaços de trabalho: Gerencie a confiança no espaço de trabalho” no menu.
Esta tela mostra o status de confiança de sua janela atual. Você pode mudar para o modo restrito pressionando “Não confie.”. alternativamente, aperte o botão “Confiar” para habilitar todos os recursos se você estiver atualmente em um estado restrito.
A seção “Pastas confiáveis e espaços de trabalho” lista todos os diretórios que você marcou como confiável. Você pode revogar a confiança de um local clicando nele e pressionando o botão Remover “X” à direita.
Todos os subdiretórios herdam o trust. Confie em uma pasta de nível superior como /home/me/projects
isso significa que todos os seus repositórios são confiáveis automaticamente. Isso compromete a eficácia do sistema Workspace Trust..
conclusão
O Workspace Trust é uma nova proteção de segurança promissora para usuários do Visual Studio Code. Os perigos da execução não intencional de código por IDEs estão apenas começando a ganhar visibilidade. Embora alguns possam achar as instruções de confiança frustrantes, pode ajudar a proteger sua máquina de fontes perigosas.
É improvável que você queira que um espaço de trabalho permaneça em modo restrito por muito tempo. Mesmo que você ainda possa ver e editar arquivos, você perderá muitos dos recursos mais poderosos do Visual Studio Code. Melhor verificar os executáveis, criar scripts e .vscode
arquivos em um repositório, verifique se há perigos e confie no local assim que tiver certeza de que se comportará conforme o esperado.