← Challenges / cloudflare-challenges
Precursor
Precursor je ověřovací systém na straně klienta založený na relaci, který průběžně vyhodnocuje chování návštěvníka v čase. Místo spoléhání na jedinou událost výzvy provádí Precursor nepřetržité ověřování přímo v prohlížeči, aby odhalil automatizaci, která u jednotlivých požadavků působí legitimně, ale v rámci relace vykazuje nelidské vzorce chování.
Jak to funguje
Precursor funguje jako nepřetržitá ověřovací smyčka na straně klienta:
- Do stránky se vloží skript na straně klienta
- Skript průběžně shromažďuje signály a provádí ověřování
- Každé spuštění vytváří signály, které Cloudflare vyhodnocuje
- Výsledky se používají k aktualizaci stavu relace uloženého v
cf_clearancecookie - Tento proces se opakuje po celou dobu relace
To umožňuje Cloudflare průběžně vyhodnocovat chování relace v čase.
Začínáme
Povolte Precursor pro svou zónu:
-
V Cloudflare dashboardu vyberte svou zónu.
-
Přejděte na Security > Nastavení.
-
Vyhledejte Precursor.
-
Zapněte Precursor.
-
Vyberte režim: Aby bylo možné relaci uživatele plně ověřit, může návštěvník potřebovat dokončit odlehčený Challenge, který relaci naváže. Precursor nabízí dva režimy podle toho, zda chcete upřednostnit uživatelský zážitek, nebo přísné ověřování:
-
Minimize Friction (default) Nezobrazuje návštěvníkovi mezistránkový Challenge. Precursor se místo toho pokouší navázat stav relace na pozadí. Díky tomu je uživatelský zážitek plynulejší, nelze však zaručit, že každá relace bude plně ověřena.
-
Maximize Security (recommended) Zobrazí odlehčený mezistránkový Challenge, který naváže platnou relaci, pokud ještě žádná neexistuje. Tím je zajištěno, že je před pokračováním ověřena každá relace, což ale může uživatelům přinést další tření.
-
Pro většinu zákazníků stačí jako jediná konfigurace vybrat režim.
Precursor Rules (volitelné)
Precursor ve vaší zóně běží standardně. Precursor Rules službu Precursor nezapínají ani nevypínají, pouze určují, jaký režim se použije pro každý požadavek.
Například:
- Spustit Minimize Friction po celém webu, ale spouštět Maximize Security k vynucení platné relace na
/checkout. - Spustit Maximize Security na všech stránkách kromě domovské stránky.
Použití Precursor s API
Pokud vaše zóna obsluhuje jak stránky prohlížeče, tak API endpointy, použijte Precursor Rules k vymezení, kde se má uplatňovat přísné vynucování.
Když je Precursor nastaven na Maximize Security, požadavky musí obsahovat platný cf_clearance cookie. To může ovlivnit:
- API endpointy volané klienty mimo prohlížeč (například
curl, mobilní backendy, úlohy server-server) - Volání API prohlížeče, která neodesílají cookies
Pro smíšený provoz HTML/API použijte jeden z těchto vzorů:
- Začněte s Minimize Friction globálně a poté použijte Maximize Security pouze na citlivé stránky nebo cesty pomocí Precursor Rules.
- Začněte s Maximize Security globálně a poté přidejte Minimize Friction Precursor Rules pro API hostname nebo API cesty.
Pro požadavky prohlížeče XHR/fetch, které musí přistupovat k endpointům pod Maximize Security, ujistěte se, že jsou zahrnuty soubory cookie:
fetch("/api/search", {
credentials: "include",
});axios.get("/api/search", {
withCredentials: true,
});Použijte Minimize Friction na koncových bodech, které nemají vyžadovat vynucování relace ve stylu challenge. Precursor i tak vyhodnocuje chování relace a dál přispívá detekčními signály a kontextem bot skóre.
Vztah k JavaScript Detections
Precursor nahrazuje JavaScript Detections (JSD). JSD i Precursor sbírají signály na straně klienta, ale Precursor je vyhodnocuje průběžně v rámci celé relace, nikoli jen jednorázovou kontrolou.
- Precursor přechází od jednorázového spuštění k nepřetržitému ověřování
- Precursor zavádí stav založený na relaci
- Precursor umožňuje dynamické řízení za běhu
Pokud k bot score přispívá JSD nebo Precursor, Cloudflare uvádí zdroj jako JavaScript Fingerprinting.
Pokud již používáte JSD
Po zapnutí Precursor Cloudflare vypne JSD, aby se obě funkce nespouštěly na stejném provozu současně. Precursor zahrnuje všechny detekce, které dříve pokrývalo JSD, a pravidla Security Rules založená na JSD budou nadále platit.
Pokud nepoužíváte JSD
Pokud povolíte Precursor, aniž byste dříve používali JSD, můžete zaznamenat více provozu se skóre bota pod 30.
Vztah ke Challenge Pages
Precursor a Challenges plní odlišné role:
- Výzvy poskytují ověření v daném okamžiku
- Precursor poskytuje nepřetržité ověřování na úrovni relace
Precursor nenahrazuje Challenges, ale posiluje je tím, že:
- určování, kdy je nutné vyžádat další Challenges
- opětovné vyhodnocování návštěvníků, kteří již Challenge úspěšně absolvovali
- odhalování automatizace, která se projeví až po určité době
Vztah k cf_clearance cookie
Precursor je úzce integrován s cf_clearance. Při spuštění nástroje Precursor:
- efektivní úroveň schválení může být snížena nebo zneplatněna
- mohou se aktivovat další Challenges
- návštěvník může být v rámci stejné relace znovu ověřen
Přehled v Security Analytics
Jakmile Precursor na zóně běží, jeho detekce se zobrazují v zobrazení Analytics dané zóny. Chcete-li ho otevřít, vyberte svou zónu v Cloudflare dashboardu a poté přejděte na Security > Analytics > Provoz > Analýza botů. Distribuce skóre botů a počty shod pravidel WAF nyní zahrnují i detekce nástroje Precursor.
Další informace najdete v tématu Security Analytics.