Taikyti agentų taisykles

Vykdymas yra SilentShield DI agentų kontrolės 2 lygis: užuot tik registravęs DI agentų apsilankymus, jūsų serveris ar edge aktyviai taiko jūsų politiką kiekvienam raktui — kiekvienas agentas leidžiamas, ribojamas arba blokuojamas. Jis tiesiogiai remiasi stebėjimo režimu. Vykdymo komponentai (Next.js middleware, sidecar dvejetainis failas, Cloudflare Worker) šiuo metu teikiami pagal užklausą ankstyvosios prieigos etape — rašykite [email protected].

Pirmiausia stebėkite, tada taikykite

Mūsų aiški rekomendacija: pirmiausia įjunkite stebėjimą, leiskite jam veikti savaitę ar dvi ir peržiūrėkite ataskaitą, prieš ką nors blokuodami — toks pat pakopinis diegimas kaip Wordfence mokymosi režimas ar DMARC (none → quarantine → reject). Tik ataskaita parodo, kurios DI paslaugos iš tikrųjų lankosi jūsų svetainėje ir ko jums kainuotų blokavimas, pavyzdžiui, citatų DI paieškoje. Taikyti be šio vaizdo reiškia spręsti aklai.

Kaip veikia vykdymas

Visi vykdytojai laikosi tos pačios sutarties: jie paima jūsų API rakto politikos paketą, patikrina paketo Ed25519 parašą pagal prisegtus SilentShield viešuosius raktus ir tada sprendžia lokaliai — leisti, atmesti ar riboti — be jokio iškvietimo užklausos kelyje.

Prisegtus pasirašymo raktus vieną kartą atsisiunčiate iš https://api.silentshield.io/.well-known/silentshield-agent-keys. Ir kiekvienas vykdytojas veikia „fail-open“ principu: įvykus bet kokiai klaidai — tinklo, parašo, pasibaigusio paketo — užklausa praleidžiama. Vykdymas niekada negali sustabdyti jūsų svetainės.

Sąrankos variantai

Next.js (Edge Middleware)

Tas pats Next.js adapteris, kuris stebi, gali ir taikyti taisykles. Nustatykite politikos aplinkos kintamuosius; middleware tuomet taiko jūsų politiką edge lygmenyje:

.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>"}]

Atvirkštinis proxy (nginx / Caddy / Traefik)

Vienas mažytis sidecar dvejetainis failas aptarnauja visus tris proxy: proxy per forward auth jo paklausia kartą per užklausą. Paleiskite jį su savo svetainės raktu ir patikimais raktais:

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 į GET /auth atsako 204 (leisti), 403 (atmesti) arba 429 su Retry-After (riboti). Prijunkite jį prie savo 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

Cloudflare Worker vykdytojas patikrina politikos paketą naudodamas Web Crypto Ed25519 ir blokuoja dar prieš užklausoms pasiekiant jūsų origin serverį:

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

Sąžiningos ribos

Agentinės naršyklės su namų (residential) IP adresais (Comet, ChatGPT Atlas ir panašios) techniškai nesiskiria nuo žmonių lankytojų. Joks produktas negali jų patikimai atpažinti — todėl SilentShield šiai kategorijai sąmoningai neduoda jokio vykdymo pažado.

robots.txt ir siunčiami turinio signalai yra tik rekomendacijos: tvarkingos naršyklės jų laikosi, bet niekas jų neverčia. Techninis vykdymas vyksta tik šiame puslapyje aprašytuose vykdytojuose — ir net jie elgiasi konservatyviai, atmesdami tik vienareikšmiškai atpažintus žinomus agentus, kad teisėti lankytojai niekada nebūtų blokuojami.

Sukonfigūruokite savo politiką

Ką kuris agentas gali daryti, konfigūruojate kiekvienam API raktui agentų centre: API raktai → pasirinkite raktą → Agentas. Išankstiniai nustatymai apima dažniausius atvejus; kiekvienas pakeitimas tampa naujai pasirašytu paketu, kurį jūsų vykdytojai perima automatiškai.

Atidaryti agentų centrą →