Cloudflare Workers
Voeg cside fingerprinting toe via een klantbeheerde Cloudflare Worker die het browserscript injecteert in HTML-responses.
Gebruik deze handleiding wanneer u cside fingerprinting aan de Cloudflare edge wilt inzetten. Dit is een klantbeheerd Worker-recept. cside hoeft uw Cloudflare-account niet te beheren voor deze setup.
Voordat u begint
U heeft nodig:
- Een Cloudflare-zone die verkeer routeert voor de pagina’s die u wilt fingerprinten
- Toegang om Workers en Worker-routes te maken of aan te passen
- De cside fingerprinting script-URL voor uw domein
- Een backend-endpoint dat de tokenstring ontvangt die uit de JSON-respons van
/clientis gehaald
Cloudflare staat maar één Worker toe op een matchende route. Als een andere Worker dezelfde route al afhandelt, combineer dan de logica of kies een smallere testroute.
Aanbevolen uitrol
Begin met een beperkte route, zoals /login* of /checkout*, voordat u de Worker over de volledige site routeert. Houd de Worker fail-open zodat een cside- of Worker-probleem de paginaweergave niet blokkeert.
Bekijk de Workers Routes-handleiding van Cloudflare voor hoe u een Worker op een route toepast.
Worker-voorbeeld
Sla uw cside script-URL op als CSIDE_FINGERPRINT_SCRIPT_URL in de Worker-omgeving.
export default {
async fetch(request, env) {
const response = await fetch(request);
const contentType = response.headers.get("content-type") || "";
if (!contentType.includes("text/html")) {
return response;
}
try {
return new HTMLRewriter()
.on("head", {
element(element) {
element.append(
`<script src="${env.CSIDE_FINGERPRINT_SCRIPT_URL}" referrerpolicy="origin" data-src="6"></script>`,
{ html: true },
);
},
})
.transform(response);
} catch {
return response;
}
},
};
Tokenuitwisseling
De Worker injecteert alleen het browserscript. Uw applicatie roept nog steeds sendClientTelemetry(externalIds?) aan, ontvangt { token } van /client, en stuurt dat sessietoken naar uw backend.
Uw backend wisselt het ruwe sessietoken uit met cside:
curl https://api.cside.com/token/v1/client \
--request POST \
--header "Content-Type: text/plain" \
--data "$CSIDE_FINGERPRINT_SESSION_TOKEN"
Zie Datapoints ophalen voor ophaalopties.
Operationele notities
- Gebruik smalle routes voor de eerste uitrol
- Houd de Worker fail-open
- Injecteer het script niet in non-HTML responses
- Controleer dat uw CSP de cside script-URL en het tokenuitwisselingsendpoint toestaat
- Ga van testroutes naar volledige dekking nadat u datapoints in cside ziet
Thanks for your feedback!