Gerenciar permissões e segurança
Aprenda sobre o sistema de permissões do Claude Code, acesso a ferramentas e salvaguardas de segurança.
O Claude Code usa um sistema de permissões em níveis para equilibrar poder e segurança:
Tipo de Ferramenta | Exemplo | Aprovação Necessária | Comportamento “Sim, não pergunte novamente” |
---|---|---|---|
Somente leitura | Leitura de arquivos, LS, Grep | Não | N/A |
Comandos Bash | Execução de shell | Sim | Permanentemente por diretório de projeto e comando |
Modificação de Arquivo | Editar/escrever arquivos | Sim | Até o fim da sessão |
Ferramentas disponíveis para o Claude
O Claude Code tem acesso a um conjunto de ferramentas poderosas que o ajudam a entender e modificar sua base de código:
Ferramenta | Descrição | Permissão Necessária |
---|---|---|
Agent | Executa um sub-agente para lidar com tarefas complexas de múltiplas etapas | Não |
Bash | Executa comandos de shell em seu ambiente | Sim |
Glob | Encontra arquivos com base em padrões de correspondência | Não |
Grep | Pesquisa padrões no conteúdo de arquivos | Não |
LS | Lista arquivos e diretórios | Não |
Read | Lê o conteúdo de arquivos | Não |
Edit | Faz edições direcionadas em arquivos específicos | Sim |
Write | Cria ou sobrescreve arquivos | Sim |
NotebookEdit | Modifica células de notebooks Jupyter | Sim |
NotebookRead | Lê e exibe conteúdos de notebooks Jupyter | Não |
WebFetch | Busca conteúdo de uma URL especificada | Sim |
As regras de permissão podem ser configuradas usando /allowed-tools
ou nas configurações de permissão.
Proteção contra injeção de prompt
A injeção de prompt é uma técnica onde um atacante tenta substituir ou manipular as instruções de um assistente de IA inserindo texto malicioso. O Claude Code inclui várias salvaguardas contra esses ataques:
- Sistema de permissões: Operações sensíveis requerem aprovação explícita
- Análise contextual: Detecta instruções potencialmente prejudiciais analisando a solicitação completa
- Sanitização de entrada: Previne injeção de comandos processando entradas do usuário
- Lista de bloqueio de comandos: Bloqueia comandos arriscados que buscam conteúdo arbitrário da web como
curl
ewget
Melhores práticas para trabalhar com conteúdo não confiável:
- Revise os comandos sugeridos antes da aprovação
- Evite canalizar conteúdo não confiável diretamente para o Claude
- Verifique as alterações propostas em arquivos críticos
- Relate comportamento suspeito com
/bug
Embora essas proteções reduzam significativamente o risco, nenhum sistema é completamente imune a todos os ataques. Sempre mantenha boas práticas de segurança ao trabalhar com qualquer ferramenta de IA.
Configurar acesso à rede
O Claude Code requer acesso a:
- api.anthropic.com
- statsig.anthropic.com
- sentry.io
Inclua essas URLs na lista de permissões ao usar o Claude Code em ambientes conteinerizados.
Implementação de referência de contêiner de desenvolvimento
O Claude Code fornece uma configuração de contêiner de desenvolvimento para equipes que precisam de ambientes consistentes e seguros. Esta configuração de devcontainer pré-configurada funciona perfeitamente com a extensão Remote - Containers do VS Code e ferramentas similares.
As medidas de segurança aprimoradas do contêiner (isolamento e regras de firewall) permitem que você execute claude --dangerously-skip-permissions
para ignorar solicitações de permissão para operação não assistida. Incluímos uma implementação de referência que você pode personalizar para suas necessidades.
Embora o devcontainer forneça proteções substanciais, nenhum sistema é completamente imune a todos os ataques. Sempre mantenha boas práticas de segurança e monitore as atividades do Claude.
Principais recursos
- Node.js pronto para produção: Construído no Node.js 20 com dependências de desenvolvimento essenciais
- Segurança por design: Firewall personalizado restringindo o acesso à rede apenas aos serviços necessários
- Ferramentas amigáveis ao desenvolvedor: Inclui git, ZSH com melhorias de produtividade, fzf e mais
- Integração perfeita com VS Code: Extensões pré-configuradas e configurações otimizadas
- Persistência de sessão: Preserva histórico de comandos e configurações entre reinicializações de contêiner
- Funciona em qualquer lugar: Compatível com ambientes de desenvolvimento macOS, Windows e Linux
Começando em 4 passos
- Instale o VS Code e a extensão Remote - Containers
- Clone o repositório de implementação de referência do Claude Code
- Abra o repositório no VS Code
- Quando solicitado, clique em “Reopen in Container” (ou use a Paleta de Comandos: Cmd+Shift+P → “Remote-Containers: Reopen in Container”)
Detalhamento da configuração
A configuração do devcontainer consiste em três componentes principais:
- devcontainer.json: Controla configurações do contêiner, extensões e montagens de volume
- Dockerfile: Define a imagem do contêiner e ferramentas instaladas
- init-firewall.sh: Estabelece regras de segurança de rede
Recursos de segurança
O contêiner implementa uma abordagem de segurança em várias camadas com sua configuração de firewall:
- Controle de acesso preciso: Restringe conexões de saída apenas para domínios na lista de permissões (registro npm, GitHub, API da Anthropic, etc.)
- Política de negação por padrão: Bloqueia todo outro acesso externo à rede
- Verificação de inicialização: Valida regras de firewall quando o contêiner inicializa
- Isolamento: Cria um ambiente de desenvolvimento seguro separado do seu sistema principal
Opções de personalização
A configuração do devcontainer é projetada para ser adaptável às suas necessidades:
- Adicione ou remova extensões do VS Code com base em seu fluxo de trabalho
- Modifique alocações de recursos para diferentes ambientes de hardware
- Ajuste permissões de acesso à rede
- Personalize configurações de shell e ferramentas de desenvolvimento