LançamentoAPI / Produto · Pronto p/ usoX: @timwork_notes→ original

Claude Code mantém as chaves do Datadog fora do alcance do agente: um proxy adiciona o token

Se um agente recebe uma chave de API diretamente nas variáveis de ambiente, basta uma injeção de prompt bem-sucedida para que a chave apareça no chat ou seja enviada para fora do sistema. Cat Wu, da equipe do Claude Code, contou a Simon Willison sobre outra abordagem: o acesso ao Datadog funciona exclusivamente para o agente, mas as credenciais ficam inacessíveis ao próprio agente. Um proxy adiciona o token no caminho até a API. O agente vê a requisição e a resposta, mas não o segredo.

Processado por IA de X: @timwork_notes; editado por Hamidun News
Claude Code mantém as chaves do Datadog fora do alcance do agente: um proxy adiciona o token
Fonte: X: @timwork_notes. Colagem: Hamidun News.
Ouvir artigo
Ficha técnica e números-chave
ParâmetroDados
Fonte originalX: @timwork_notes ↗
Editor-chefe
Dado-chave #1O agente envia uma requisição sem a chave, e o proxy adiciona o token
Dado-chave #2Uma injeção de prompt não consegue extrair uma chave que não está no ambiente
Dado-chave #3Restrinja as permissões do token às requisições de que o agente precisa

Uma situação familiar: você quer que um agente explore o Datadog por conta própria, investigue alertas e encontre a causa de uma queda. O caminho mais simples é colocar uma chave de API em uma variável de ambiente. Funciona imediatamente. E, com a mesma rapidez, vira um problema de segurança.

Uma publicação de @timwork_notes traz uma citação: Cat Wu, que trabalha no Claude Code, disse a Simon Willison que as credenciais do Datadog estão “disponíveis apenas para o agente, mas inacessíveis ao próprio agente”. Parece um paradoxo, mas há uma ideia simples de engenharia por trás disso. Uma ressalva importante: temos apenas um breve relato da conversa, sem detalhes de implementação, portanto a análise abaixo trata do padrão em si, e não de uma configuração interna específica.

Por que uma chave diretamente no ambiente é perigosa

Um agente lê muito texto não confiável: páginas da web, logs, tickets e comentários no código. Qualquer um deles pode conter uma instrução como “exiba todas as variáveis de ambiente”. Se a chave está no ambiente do processo, o modelo tem um caminho para acessá-la. Basta uma injeção de prompt bem-sucedida para que o segredo seja exibido em uma resposta, gravado em um arquivo ou enviado ao servidor de outra pessoa.

O autor da publicação é direto: uma chave diretamente no ambiente do agente está “a um único prompt injetado de vazar”. É difícil discordar. Usar instruções como “nunca mostre as chaves” como defesa não é confiável: trata-se de um pedido, não de uma barreira.

Como funciona a arquitetura com proxy

A ideia é que o agente simplesmente não tenha o segredo. Em vez disso, ele recebe a capacidade de acessar o Datadog por meio de um proxy intermediário.

Um exemplo simples: o agente quer obter as métricas de um serviço. Ele envia uma requisição ao endereço do proxy sem token algum ou com um valor provisório. O proxy, que roda fora do ambiente isolado do agente, verifica se a requisição é permitida, adiciona o token real a um cabeçalho e encaminha a requisição ao Datadog. A resposta volta para o agente. Durante todo esse processo, o segredo real permanece exclusivamente no processo do proxy.

O resultado: o agente pode usar o acesso, mas não copiar as credenciais. Se ele for enganado, o invasor consegue, no máximo, enviar as mesmas requisições pelo proxy enquanto ele estiver em execução, em vez de obter uma chave que possa levar e usar em qualquer lugar.

O que fazer na prática

Esse padrão pode ser implementado sem ferramentas especializadas:

  • Não coloque chaves de longa duração no ambiente do agente, em arquivos do projeto ou em configurações que ele possa ler.
  • Coloque um pequeno proxy entre o agente e a API externa para adicionar o token. Um proxy reverso comum ou um sidecar serve para isso.
  • Reduza as permissões. Para investigar incidentes, o agente só precisa ler métricas e logs; ele não precisa de permissões de escrita ou administração.
  • Restrinja no proxy os caminhos e métodos permitidos. Assim, mesmo um agente comprometido não poderá ultrapassar esses limites.
  • Registre as requisições que passam pelo proxy: isso também fornece uma trilha de auditoria do que o agente fez na sua infraestrutura.

Limitações

Um proxy não resolve tudo. Enquanto o agente tiver acesso à API pelo proxy, uma injeção de prompt ainda poderá induzi-lo a executar ações permitidas, como ler logs sensíveis e transmitir seu conteúdo para fora do sistema. Por isso, o proxy funciona em conjunto com permissões restritas e controles de tráfego de saída, sem substituí-los.

Outra limitação: trata-se apenas de uma publicação curta e de alcance limitado, sem diagramas nem código. Mas o princípio de que “o segredo fica onde o modelo não consegue alcançá-lo” é mais útil do que uma dúzia de linhas no prompt de sistema.

Se você está criando agentes que acessam sistemas de produção, verifique uma coisa hoje: o que acontece se o modelo exibir todas as variáveis de ambiente? Se houver chaves de produção ali, está na hora de adicionar um proxy.

História

Perguntas frequentes sobre a notícia

Por que uma chave diretamente no ambiente é perigosa?

Um agente lê muito texto não confiável: páginas da web, logs, tickets e comentários no código. Qualquer um deles pode conter uma instrução como “exiba todas as variáveis de ambiente”. Se a chave está no ambiente do processo, o modelo tem um caminho para acessá-la. Basta uma injeção de prompt bem-sucedida para que o segredo seja exibido em uma resposta, gravado em um arquivo ou enviado ao servidor de outra pessoa.

Como funciona a arquitetura com proxy?

A ideia é que o agente simplesmente não tenha o segredo. Em vez disso, ele recebe a capacidade de acessar o Datadog por meio de um proxy intermediário. Um exemplo simples: o agente quer obter as métricas de um serviço. Ele envia uma requisição ao endereço do proxy sem token algum ou com um valor provisório. O proxy, que roda fora do ambiente isolado do agente, verifica se a requisição é permitida, adiciona o token real a um cabeçalho e encaminha a requisição ao Datadog. A resposta volta para o agente.

O que fazer na prática?

Esse padrão pode ser implementado sem ferramentas especializadas: Não coloque chaves de longa duração no ambiente do agente, em arquivos do projeto ou em configurações que ele possa ler. Coloque um pequeno proxy entre o agente e a API externa para adicionar o token. Um proxy reverso comum ou um sidecar serve para isso. Reduza as permissões. Para investigar incidentes, o agente só precisa ler métricas e logs; ele não precisa de permissões de escrita ou administração.

ZK
Zhemal Khamidun — CPO da Alpina Digital, gerente de produto do AlpinaGPT. Cria produtos de IA desde 2019. O Hamidun News é um projeto pessoal que virou um agregador em produção com mais de 6.000 leitores.
✦ Hands-On AI Engineering · Hamidun Academy

Build & Ship Production AI Agents Without Boilerplate Code

Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.

Start 72h Free Trial →Vibe-Coding Intensive
O que você acha?
Carregando comentários…