Aplicar regras de agentes

A aplicação é o nível 2 do Controlo de Agentes de IA do SilentShield: em vez de apenas registar as visitas de agentes de IA, o seu servidor ou a sua edge aplica ativamente a política por chave — cada agente é permitido, limitado ou bloqueado. Baseia-se diretamente no modo de observação. Os componentes de enforcement (middleware Next.js, binário sidecar, Cloudflare Worker) são atualmente disponibilizados a pedido em acesso antecipado — contacte [email protected].

Primeiro observar, depois aplicar

A nossa recomendação clara: ative primeiro a observação, deixe-a correr uma ou duas semanas e analise o relatório antes de bloquear o que quer que seja — a mesma implementação faseada do modo de aprendizagem do Wordfence ou de um rollout DMARC (none → quarantine → reject). Só o relatório mostra quais serviços de IA visitam realmente o seu site e o que um bloqueio lhe custaria, por exemplo citações na pesquisa de IA. Aplicar sem essa visão é decidir às cegas.

Como funciona a aplicação

Todos os enforcers partilham o mesmo contrato: obtêm um pacote de política para a sua chave de API, verificam a assinatura Ed25519 do pacote contra as chaves públicas fixadas do SilentShield e decidem depois localmente — permitir, recusar ou limitar — sem nenhuma chamada no caminho da resposta.

As chaves de assinatura fixadas são obtidas uma única vez em https://api.silentshield.io/.well-known/silentshield-agent-keys. E todos os enforcers funcionam em modo fail-open: perante qualquer erro — rede, assinatura, pacote expirado — a solicitação é deixada passar. A aplicação nunca pode derrubar o seu site.

Variantes de configuração

Next.js (Edge Middleware)

O mesmo adaptador Next.js que observa também pode aplicar. Defina as variáveis de ambiente da política; a middleware aplica então a sua política na edge:

.envbash
AGENT_POLICY_URL=https://api.silentshield.io/api/v1/agent/policy
AGENT_OBSERVE_API_KEY=YOUR_API_KEY
AGENT_TRUSTED_KEYS=[{"kid":"…","key":"<base64 ed25519 pubkey>"}]

Reverse Proxy (nginx / Caddy / Traefik)

Um único e minúsculo binário sidecar serve os três proxies: o proxy consulta-o uma vez por solicitação via forward auth. Inicie-o com a sua chave do site e as chaves de confiança:

Terminalbash
AGENT_POLICY_URL="https://api.silentshield.io/api/v1/agent/policy" \
AGENT_SITE_KEY="YOUR_API_KEY" \
AGENT_TRUSTED_KEYS='[{"kid":"…","key":"<base64 ed25519 pubkey>"}]' \
AGENT_SIDECAR_LISTEN=":8127" \
  ./agent-sidecar

O sidecar responde em GET /auth com 204 (permitir), 403 (recusar) ou 429 mais Retry-After (limitar). Ligue-o ao seu proxy:

nginx.confnginx
location = /_ss_auth {
    internal;
    proxy_pass              http://127.0.0.1:8127/auth;
    proxy_pass_request_body off;
    proxy_set_header        Content-Length "";
    proxy_set_header        X-Forwarded-Method $request_method;
    proxy_set_header        X-Forwarded-Uri    $request_uri;
    proxy_set_header        X-Forwarded-Host   $host;
    proxy_set_header        X-Forwarded-For    $remote_addr;
    proxy_set_header        User-Agent         $http_user_agent;
    proxy_set_header        Signature          $http_signature;
    proxy_set_header        Signature-Input    $http_signature_input;
    proxy_set_header        Signature-Agent    $http_signature_agent;
}
location / {
    auth_request /_ss_auth;
    # ... your normal proxy_pass to the origin ...
}
Caddyfilecaddy
example.com {
    forward_auth 127.0.0.1:8127 {
        uri /auth
        copy_headers User-Agent Signature Signature-Input Signature-Agent
        # Caddy sends X-Forwarded-Method/-Uri/-Host automatically
    }
    reverse_proxy origin:8080
}
traefik.ymlyaml
http:
  middlewares:
    silentshield:
      forwardAuth:
        address: "http://agent-sidecar:8127/auth"
        authRequestHeaders:
          - "User-Agent"
          - "Signature"
          - "Signature-Input"
          - "Signature-Agent"

Cloudflare Worker

O enforcer para Cloudflare Worker verifica o pacote de política com Web Crypto Ed25519 e bloqueia antes de as solicitações chegarem sequer ao seu origin:

Terminalbash
cd enforcers/cloudflare-worker
npx wrangler secret put AGENT_SITE_KEY
# set AGENT_POLICY_URL + AGENT_TRUSTED_KEYS in wrangler.toml [vars]
npx wrangler deploy

Limites honestos

Os navegadores agênticos em endereços IP residenciais (Comet, ChatGPT Atlas e semelhantes) são tecnicamente indistinguíveis de visitantes humanos. Nenhum produto consegue identificá-los com fiabilidade — por isso, o SilentShield deliberadamente não faz nenhuma promessa de aplicação para esta categoria.

O robots.txt e os sinais de conteúdo emitidos são consultivos: os crawlers bem-comportados respeitam-nos, mas nada os obriga. A aplicação técnica acontece apenas nos enforcers desta página — e mesmo esses agem de forma conservadora, recusando apenas agentes conhecidos identificados com certeza, para que os visitantes legítimos nunca sejam bloqueados.

Configurar a sua política

O que cada agente pode fazer configura-se por chave de API no hub de agentes: Chaves API → selecionar uma chave → Agente. As predefinições cobrem os casos comuns; cada alteração torna-se um pacote recém-assinado que os seus enforcers adotam automaticamente.

Abrir o hub de agentes →