Vynucovanie pravidiel agentov

Vynucovanie je 2. stupeň kontroly AI agentov od SilentShield: namiesto toho, aby sa návštevy AI agentov len zaznamenávali, váš server alebo edge aktívne uplatňuje politiku daného kľúča — každý agent je povolený, obmedzený alebo blokovaný. Priamo nadväzuje na režim sledovania. Komponenty vynucovania (Next.js middleware, sidecar binárka, Cloudflare Worker) sú momentálne dostupné na vyžiadanie v rámci early access — kontaktujte [email protected].

Najprv sledovať, potom vynucovať

Naše jasné odporúčanie: najprv zapnite sledovanie, nechajte ho bežať týždeň či dva a pred blokovaním čohokoľvek si pozrite prehľad — rovnaký postupný prístup ako režim učenia vo Wordfence alebo rollout DMARC (none → quarantine → reject). Až prehľad ukáže, ktoré AI služby váš web skutočne navštevujú a čo by vás blokovanie stálo, napríklad citácie v AI vyhľadávaní. Vynucovať bez tohto obrazu znamená rozhodovať naslepo.

Ako vynucovanie funguje

Každý enforcer zdieľa rovnaký kontrakt: stiahne policy bundle pre váš API kľúč, overí jeho podpis Ed25519 voči pripnutým verejným kľúčom SilentShield a potom rozhoduje lokálne — povoliť, odmietnuť alebo obmedziť — bez jediného volania na ceste požiadavky.

Pripnuté podpisové kľúče si stiahnete raz z https://api.silentshield.io/.well-known/silentshield-agent-keys. A každý enforcer funguje fail-open: pri akejkoľvek chybe — sieť, podpis, expirovaný bundle — sa požiadavka prepustí. Vynucovanie nikdy nemôže vyradiť váš web z prevádzky.

Varianty nastavenia

Next.js (Edge Middleware)

Ten istý adaptér pre Next.js, ktorý sleduje, dokáže aj vynucovať. Nastavte premenné prostredia pre politiku; middleware ju potom uplatní 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>"}]

Reverzný proxy (nginx / Caddy / Traefik)

Jediná malá sidecar binárka obslúži všetky tri proxy: proxy sa jej cez forward auth pýta raz pri každej požiadavke. Spustite ju so svojím kľúčom webu a dôveryhodnými kľúčmi:

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

Sidecar odpovedá na GET /auth stavom 204 (povoliť), 403 (odmietnuť) alebo 429 plus Retry-After (obmedziť). Takto ho zapojíte do svojho 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

Enforcer pre Cloudflare Worker overuje policy bundle pomocou Web Crypto Ed25519 a blokuje skôr, než požiadavky vôbec dosiahnu váš 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

Úprimné limity

Agentické prehliadače na rezidenčných IP adresách (Comet, ChatGPT Atlas a podobné) sú technicky nerozoznateľné od ľudských návštevníkov. Žiadny produkt ich nedokáže spoľahlivo identifikovať — SilentShield preto pre túto kategóriu zámerne nedáva žiadny prísľub vynucovania.

robots.txt a vysielané content signály sú odporúčania: slušné crawlery ich rešpektujú, no nič ich k tomu nenúti. Technické vynucovanie prebieha len v enforceroch na tejto stránke — a aj tie postupujú konzervatívne a odmietajú len jednoznačne identifikované známe agenty, aby legitímni návštevníci neboli nikdy blokovaní.

Konfigurácia politiky

Čo smie ktorý agent, konfigurujete pre každý API kľúč v hube agentov: API kľúče → vyberte kľúč → Agent. Predvoľby pokrývajú bežné prípady; každá zmena sa stane novo podpísaným bundlom, ktorý vaši enforceri automaticky prevezmú.

Otvoriť hub agentov →