Free chroni formularz subskrypcji honeypot field + rate limit (5 zapisów / 5 min per IP) — wystarczająco dla większości sklepów. Sklepy z agresywnymi botami (e-commerce z luksusowymi produktami, drop campaigns) potrzebują czegoś silniejszego — Pro dostarcza native captcha.
2 providery captcha
- Cloudflare Turnstile — darmowy, privacy-friendly (no cookie tracking), invisible challenge w 99% przypadków
- Google reCAPTCHA v3 — score-based (0.0–1.0 = bot–human), threshold konfigurowalny (default 0.5)
Jak działa
- Włączasz captcha w Stock Notifier → Captcha, wybierasz providera, wklejasz Site Key (public) i Secret Key (Secret Vault encrypted)
- Frontend formularz subskrypcji dostaje widget captcha (Turnstile invisible / reCAPTCHA badge)
- Submit formularza nasłuchuje filter
wpnest_stonot_pre_subscribe_validate(extension point Free 1.1.0) - Pro Captcha_Validator wywołuje server-side verify na API providera
- Bot fail → 400 Bad Request, no subscriber row created; Human pass → standard flow
Secret Vault (AES-256-CBC at rest)
Wszystkie wrażliwe credentials (captcha secret, SMS tokens, ESP API keys, webhook HMAC keys) są szyfrowane w bazie. Plugin używa openssl_encrypt z AES-256-CBC + IV random per record + key derived przez sha256(AUTH_KEY || seed) gdzie seed jest unique per WP installation.
Backup bazy bez AUTH_KEY = niemożliwe odszyfrowanie credentials. Trzymaj AUTH_KEY (wp-config.php) w bezpiecznym miejscu — utrata = utrata wszystkich zapisanych tokenów. Plugin tego nie odzyska (to feature, nie bug).
Turnstile jest darmowy bez limitów; reCAPTCHA v3 też darmowy ale wymaga Google account. Polecam Turnstile dla privacy-conscious sklepów (RODO friendly).