Aplicarea regulilor pentru agenți
Aplicarea este nivelul 2 al Controlului agenților AI din SilentShield: în loc să înregistreze doar vizitele agenților AI, serverul sau edge-ul tău aplică activ politica per cheie — fiecare agent este permis, limitat sau blocat. Se bazează direct pe modul de observare. Componentele de enforcement (middleware Next.js, binarul sidecar, Cloudflare Worker) sunt momentan disponibile la cerere în early access — contactează [email protected].
Întâi observă, apoi aplică
Recomandarea noastră clară: activează mai întâi observarea, las-o să ruleze una–două săptămâni și analizează raportul înainte să blochezi ceva — aceeași abordare în etape ca modul de învățare din Wordfence sau ca un rollout DMARC (none → quarantine → reject). Doar raportul îți arată ce servicii AI îți vizitează efectiv site-ul și ce te-ar costa un blocaj, de exemplu citări în căutarea AI. Să aplici fără această imagine înseamnă să decizi orbește.
Cum funcționează aplicarea
Toți enforcerii au același contract: preiau un pachet de politici pentru cheia ta API, îi verifică semnătura Ed25519 față de cheile publice fixate ale SilentShield și apoi decid local — permite, respinge sau limitează — fără niciun apel pe calea cererii.
Cheile de semnare fixate le preiei o singură dată de la https://api.silentshield.io/.well-known/silentshield-agent-keys. Și fiecare enforcer funcționează fail-open: la orice eroare — rețea, semnătură, pachet expirat — cererea este lăsată să treacă. Aplicarea nu îți poate doborî niciodată site-ul.
Variante de configurare
Next.js (Edge Middleware)
Același adaptor Next.js care observă poate și aplica. Setează variabilele de mediu pentru politică; middleware-ul îți aplică apoi politica la edge:
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)
Un singur binar sidecar minuscul deservește toate cele trei proxy-uri: proxy-ul îl întreabă o dată per cerere, prin forward auth. Pornește-l cu cheia ta de site și cu cheile de încredere:
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-sidecarSidecar-ul răspunde la GET /auth cu 204 (permis), 403 (respins) sau 429 plus Retry-After (limitat). Așa îl conectezi la proxy-ul tău:
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 ...
}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
}http:
middlewares:
silentshield:
forwardAuth:
address: "http://agent-sidecar:8127/auth"
authRequestHeaders:
- "User-Agent"
- "Signature"
- "Signature-Input"
- "Signature-Agent"Cloudflare Worker
Enforcerul pentru Cloudflare Worker verifică pachetul de politici cu Web Crypto Ed25519 și blochează înainte ca cererile să ajungă măcar la origin-ul tău:
cd enforcers/cloudflare-worker
npx wrangler secret put AGENT_SITE_KEY
# set AGENT_POLICY_URL + AGENT_TRUSTED_KEYS in wrangler.toml [vars]
npx wrangler deployLimite oneste
Browserele agentice de pe adrese IP rezidențiale (Comet, ChatGPT Atlas și altele similare) sunt tehnic imposibil de deosebit de vizitatorii umani. Niciun produs nu le poate identifica fiabil — de aceea SilentShield nu face în mod deliberat nicio promisiune de aplicare pentru această categorie.
robots.txt și semnalele de conținut emise sunt orientative: crawlerele binevoitoare le respectă, dar nimic nu le obligă. Aplicarea tehnică are loc doar în enforcerii de pe această pagină — și chiar și aceștia acționează conservator, respingând doar agenți cunoscuți identificați cu certitudine, astfel încât vizitatorii legitimi să nu fie blocați niciodată.
Configurează-ți politica
Ce are voie să facă fiecare agent se configurează per cheie API în hub-ul agenților: Chei API → alege o cheie → Agent. Presetările acoperă cazurile frecvente; fiecare modificare devine un pachet nou semnat, pe care enforcerii tăi îl preiau automat.