Home / Claude Code / Sua Política de Segurança do Claude Code Existe Mas Seus Devs Começam o Dia Sem Ela?

Sua Política de Segurança do Claude Code Existe Mas Seus Devs Começam o Dia Sem Ela?

Porta de escritório moderno com teclado digital de segurança vermelho representando forceRemoteSettingsRefresh do Claude Code

Você configurou tudo direitinho. Entrou no admin console do Claude.ai, definiu as políticas de segurança da sua software house — bloqueou curl, proibiu leitura de .env, ativou hooks de auditoria, restringiu permissões. Dormiu tranquilo.

Só que às 8h da manhã, quando seus 20 devs abriram o Claude Code, pelo menos 3 deles rodaram por alguns minutos — ou o dia inteiro — sem nenhuma dessas regras aplicadas.

Não porque hackearam. Não porque desativaram. Simplesmente porque o Claude Code, por padrão, é fail-open no startup. Se a busca de configurações remotas falha — rede lenta, VPN conectando, proxy corporativo ainda carregando — ele segue em frente. Sem suas políticas. Sem seus bloqueios. Sem seus hooks de auditoria.

Na minha experiência com 300+ software houses, essa é a falha de segurança mais comum em ferramentas de IA: a política existe, mas o enforcement tem um buraco no momento mais crítico — o startup.


O Que é o forceRemoteSettingsRefresh

A partir da versão 2.1.92 do Claude Code, existe uma setting chamada forceRemoteSettingsRefresh. Uma linha de JSON que muda o comportamento do startup de fail-open para fail-closed.

{
  "forceRemoteSettingsRefresh": true
}

Essa configuração é adicionada nas managed settings do admin console — a mesma interface onde você já define suas políticas de permissão, hooks e bloqueios.

O que muda:

Comportamento Sem forceRemoteSettingsRefresh (padrão) Com forceRemoteSettingsRefresh
Startup sem cache Busca settings em background, dev roda sem políticas até completar Bloqueia startup até buscar settings do servidor
Fetch falha no startup Warning silencioso, dev roda sem políticas CLI sai com erro — dev não consegue usar sem políticas
Rede indisponível com cache Cache antigo aplica, busca em background Cache antigo aplica (setting se auto-perpetua no cache)
Rede indisponível sem cache Dev roda completamente sem proteção CLI sai — dev precisa de rede para iniciar

A diferença entre as duas colunas é a diferença entre “segurança quando conveniente” e “segurança garantida”.


Como Funciona na Prática

Para entender por que isso importa, precisa entender como o Claude Code entrega configurações remotas.

O fluxo normal (sem forceRemoteSettingsRefresh):

  1. Dev abre o Claude Code
  2. CLI verifica se tem settings em cache
  3. Se tem cache: aplica imediatamente, busca atualização em background
  4. Se não tem cache: inicia busca assíncrona, dev já pode usar enquanto busca
  5. Settings chegam? Aplica. Não chegam? Dev roda sem elas.

Essa janela entre o startup e a chegada das settings é onde mora o risco. Na documentação oficial, a Anthropic chama isso de “brief window before settings load where restrictions are not yet enforced”.

“Brief window” pode ser 2 segundos. Pode ser 2 horas se a VPN não conectou. Pode ser o dia inteiro se o dev está trabalhando do aeroporto.

O fluxo com forceRemoteSettingsRefresh:

  1. Dev abre o Claude Code
  2. CLI bloqueia no startup
  3. Busca settings frescos do servidor
  4. Se conseguiu: aplica e libera o CLI
  5. Se falhou: CLI sai com erro — dev não consegue usar

Zero janela. Zero risco. O CLI simplesmente não funciona sem as políticas da sua organização carregadas.

A parte inteligente: auto-perpetuação

O forceRemoteSettingsRefresh tem um detalhe de engenharia elegante. Uma vez que essa setting é entregue pelo servidor, ela é salva no cache local. Isso significa que, mesmo em startups subsequentes antes do primeiro fetch bem-sucedido, o CLI já sabe que precisa bloquear e esperar.

A setting se protege contra a própria remoção acidental — se alguém deletar o cache, o comportamento volta para fail-open, mas no próximo fetch do servidor, a setting é restaurada automaticamente.


Por Que Isso Importa Para Sua Software House

O problema real: configuration drift em ferramentas de IA

Configuration drift — quando o estado real diverge do estado desejado — é o pesadelo silencioso de qualquer operação de TI. Em cloud, 82% dos incidentes de segurança estão ligados a misconfigurações. O custo médio de um breach por misconfiguration é de US$ 4,3 milhões — e a detecção leva em média 180 dias.

Agora pense nas ferramentas de IA dos seus devs. 73% dos times de engenharia usam AI coding tools diariamente em 2026. São ferramentas que leem código, executam comandos, acessam APIs, manipulam arquivos. E a maioria das empresas gerencia as políticas dessas ferramentas com a mesma seriedade que gerencia as políticas de cloud?

Não.

48% dos profissionais de cibersegurança identificam agentic AI como o vetor de ataque mais perigoso de 2026. E o custo médio de um breach envolvendo shadow AI é de US$ 4,63 milhões — US$ 670 mil a mais que um breach padrão.

Cenário real: software house com 20 devs

Sua SH tem 20 devs usando Claude Code Teams. Você configurou no admin console:

{
  "permissions": {
    "deny": [
      "Bash(curl *)",
      "Bash(wget *)",
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ],
    "disableBypassPermissionsMode": "disable"
  },
  "allowManagedPermissionRulesOnly": true,
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command", "command": "/usr/local/bin/audit-edit.sh" }
        ]
      }
    ]
  }
}

Políticas sólidas. Agora segunda-feira de manhã:

  • Dev 1: VPN corporativa lenta, Claude Code startou antes das settings chegarem → roda 40 minutos sem bloqueios
  • Dev 2: Trabalhando remoto com WiFi instável, fetch falhou silenciosamente → roda o dia inteiro sem auditoria
  • Dev 3: Laptop novo, primeiro uso, nunca teve cache → janela de 30 segundos sem nenhuma política

Três devs. Três brechas. Nenhum alerta. Nenhum log. Suas políticas existem no servidor, mas não existem onde importa — na máquina do dev no momento que ele começa a usar.

Com forceRemoteSettingsRefresh: true, os três cenários terminam da mesma forma: o CLI espera ou sai. Zero brechas.

O stack completo de enforcement

Na minha experiência, segurança de ferramentas de IA não é uma feature — é um stack. O forceRemoteSettingsRefresh é a última peça que faltava:

Camada Setting O que resolve
Sandbox sandbox.failIfUnavailable Bloqueia se sandbox indisponível
Escape hatch allowUnsandboxedCommands: false Remove dangerouslyDisableSandbox
Credenciais SUBPROCESS_ENV_SCRUB=1 Limpa credenciais de subprocessos
Skills disableSkillShellExecution Bloqueia shell em skills
Permissões allowManagedPermissionRulesOnly Só regras do admin
Startup forceRemoteSettingsRefresh Garante que TUDO acima carregue antes do dev usar

A última linha é a que segura todas as outras. De nada adianta ter sandbox fail-closed se o dev começa o dia sem as settings que ativam o sandbox fail-closed.


O Que Ninguém Está Falando: Governance de AI Tools

Estamos em 2026. 81,8% dos líderes de TI têm políticas documentadas para ferramentas de IA. Mas ter política documentada e ter política enforced são coisas completamente diferentes.

A maioria das empresas trata governança de AI tools como trata governança de SaaS: define a política, comunica para o time, e torce para que todo mundo siga. Isso não funciona nem com planilha de Excel — imagina com uma ferramenta que executa comandos no terminal.

O forceRemoteSettingsRefresh representa uma mudança de paradigma: de governance por confiança para governance por enforcement. Não é “confie que seus devs vão usar com as configurações certas”. É “o CLI não funciona sem as configurações certas”.

Isso é especialmente crítico para software houses que atendem clientes com requisitos de compliance. Se seu cliente exige auditoria de código, LGPD, ISO 27001 — e seu dev rodou o Claude Code por 2 horas sem os hooks de auditoria porque a VPN estava lenta — você tem um gap de compliance real.


Como Implementar

Passo 1: Verifique seus pré-requisitos

  • Claude for Teams ou Claude for Enterprise
  • Claude Code v2.1.92 ou superior
  • Rede permitindo acesso a api.anthropic.com

Passo 2: Adicione ao admin console

No Claude.ai → Admin Settings → Claude Code → Managed Settings, adicione:

{
  "forceRemoteSettingsRefresh": true
}

Pode ser combinado com todas as suas outras settings existentes.

Passo 3: Garanta a conectividade

Atenção: Se api.anthropic.com estiver inacessível, o CLI não vai abrir. Certifique-se de que:

  • Firewalls permitem acesso ao endpoint
  • Proxies corporativos não bloqueiam
  • VPNs não interferem na resolução DNS

Passo 4: Comunique o time

Seus devs vão notar que o Claude Code demora um instante a mais para abrir — está buscando as settings. Se a rede cair, eles vão ver um erro ao invés de o CLI abrindo normalmente. Explique que isso é intencional: é o preço de ter segurança garantida.

Verificação

Peça a um dev para rodar /status — vai mostrar qual source de managed settings está ativo. /permissions mostra as regras efetivas.


O Que Eu Penso

Fail-open é um default razoável para devs individuais. Ninguém quer que o Claude Code recuse abrir porque o WiFi do café caiu por 3 segundos.

Mas para uma software house com 10, 20, 50 devs? Fail-open é um risco que não faz sentido aceitar. Você não deixa o firewall da empresa em “modo permissivo enquanto carrega”. Você não deixa o antivírus desligado até a VPN conectar. Por que deixaria sua ferramenta de IA — que lê código, executa comandos e acessa arquivos — rodar sem políticas porque o fetch demorou?

A Anthropic acertou em fazer fail-open o padrão (senão 90% dos devs reclamariam). Mas acertou mais ainda em dar o forceRemoteSettingsRefresh para quem precisa de fail-closed. Uma linha de config. Zero desculpas.

Se você tem Claude Code Teams ou Enterprise e ainda não ativou isso, ativa. Hoje. Antes que um dos seus devs rode um curl para um endpoint público de um cliente num dia que a VPN não conectou e seus bloqueios não carregaram.


Links e Fontes

Sou Thulio, mentoro 300+ software houses desde 2016. Se você quer implementar governança de IA de verdade na sua SH — não só políticas no papel, mas enforcement real — fala comigo.

Marcado:

Deixe um Comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *