Ochrana před boty (reCAPTCHA v3 a Cloudflare Turnstile)

Veřejné rezervační a registrační formuláře mohou být terčem spambotů, kteří vytvářejí falešné schůzky nebo účty. LockMyCal podporuje dvě neviditelné ochrany, které návštěvníky neobtěžují klikáním na obrázky:

  • Google reCAPTCHA v3 – vyhodnotí chování návštěvníka a přidělí skóre od 0.0 (bot) do 1.0 (člověk); pod prahem (výchozí 0.3) je požadavek odmítnut.
  • Cloudflare Turnstile – ochrana od Cloudflare bez sledování návštěvníků pro reklamní účely.

Poskytovatele volíte zvlášť pro registraci a zvlášť pro rezervace – off (vypnuto), google nebo cloudflare.

1. Získání klíčů

  • reCAPTCHA v3: Na google.com/recaptcha/admin zvolte reCAPTCHA v3, přidejte doménu instance a zkopírujte Site Key a Secret Key.
  • Turnstile: V dashboardu Cloudflare otevřete Turnstile, přidejte web s doménou instance a zkopírujte Site Key a Secret Key.

2. Konfigurace v LockMyCal

# Poskytovatel zvlášť pro registraci a rezervace: off / google / cloudflare
RECAPTCHA_SIGNUP_PROVIDER=cloudflare
RECAPTCHA_BOOKING_PROVIDER=google

# Google reCAPTCHA v3
RECAPTCHA_SITE_KEY=vas_recaptcha_site_key
RECAPTCHA_SECRET_KEY=vas_recaptcha_secret_key
RECAPTCHA_SIGNUP_MIN_SCORE=0.3
RECAPTCHA_BOOKING_MIN_SCORE=0.3

# Cloudflare Turnstile
TURNSTILE_SITE_KEY=vas_turnstile_site_key
TURNSTILE_SECRET_KEY=vas_turnstile_secret_key

Poskytovatele lze přepnout i za běhu bez restartu v Administrace → Nastavení aplikace → Ověření (sekce Ochrana před boty).

Note

Starší proměnné RECAPTCHA_SIGNUP_ENABLED / RECAPTCHA_BOOKING_ENABLED jsou stále podporované: pokud není nastaven *_PROVIDER, hodnota true odpovídá poskytovateli google.

3. Chování při výpadku

  • reCAPTCHA se načítá až ve chvíli, kdy návštěvník začne vyplňovat formulář, a když Google není dostupný, rezervace i registrace projdou.
  • Cloudflare Turnstile při výpadku Cloudflare odeslání odmítne.
  • Adresa Turnstile se do ochranné hlavičky (Content-Security-Policy) přidává jen tehdy, když je Turnstile nastavený pro rezervace nebo registraci.