Sådan forbliver dine CV'er private — Shortlane

shortlane.myclienta.com · sidst kontrolleret 24. oktober 2026 · English
Dit CV og jobteksten forlader aldrig din browser. Licenstjekket får ikke CV-tekst, et hash af et CV, en score eller et filnavn.

Kontrolleret mod denne kode den 24. oktober 2026. Netværksoptagelsen fra produktion er fra 22. juli 2026, før licenstjenesten fandtes.

Hvad den automatiske test kontrollerer

En Playwright-test i dette repo kører to forløb med eksempelfilen cv-strong-mette-hansen.pdf og finansassistent-jobopslaget. Jobsøger-forløbet vedhæfter PDF'en, indsætter jobopslaget og kører tjekket. Rekrutteringsforløbet henter de indbyggede eksempel-CV'er og rangerer dem, og vedhæfter også den samme PDF. Testen registrerer alle netværksforespørgsler under de to forløb.

Den fejler, hvis en forespørgsels-URL eller et forespørgselsindhold indeholder tekst fra det CV eller fra jobopslaget, eller bytes fra PDF'en. De eneste værter, den tillader, er dette site, licens-Workeren på https://cvmatch-licence.crcaway.workers.dev, Stripe (checkout.stripe.com, js.stripe.com, m.stripe.com, q.stripe.com), de offentlige model- og OCR-filværter (huggingface.co, hf.co, cdn.jsdelivr.net) og Cloudflare Web Analytics (cloudflareinsights.com). Forespørgsler til licens-Workeren tjekkes på samme måde.

Det er ét gennemløb af de to forløb. Testen holder ikke øje med senere besøg, og den stopper ikke i sig selv en senere ændring, der tilføjer en vært.

1. Arkitektur

2. Browseren blokerer forbindelser uden for en kort tilladelsesliste (CSP)

Hvert svar har en Content-Security-Policy. Browseren blokerer forbindelser til alle værter uden for denne liste:

default-src 'self';
script-src 'self' 'wasm-unsafe-eval' https://cdn.jsdelivr.net
           https://static.cloudflareinsights.com;
worker-src 'self' blob:;
connect-src 'self' https://huggingface.co https://*.huggingface.co https://*.hf.co
            https://cdn.jsdelivr.net
            https://cvmatch-licence.crcaway.workers.dev https://checkout.stripe.com
            https://cloudflareinsights.com;
img-src 'self' data: blob:; style-src 'self' 'unsafe-inline'; font-src 'self';
object-src 'none'; frame-ancestors 'none'; base-uri 'self'; form-action 'none'

Browseren afviser en forbindelse til enhver anden vært, før forespørgslen forlader maskinen. Hugging Face og jsDelivr er med for de offentlige model- og OCR-filer. Licensserveren og Stripe Checkout er de øvrige forbindelser. De to cloudflareinsights.com-værter er Cloudflare Web Analytics: en sidevisningstæller uden cookies, som aldrig ser dokumentindhold. form-action 'none' betyder, at ingen formular kan sendes nogen steder hen; frame-ancestors 'none' forhindrer clickjacking. En udgående POST til en vært uden for listen blokeres, og browseren logger et CSP-brud.

3. Sikkerhedsheadere

X-Frame-Options: DENY · X-Content-Type-Options: nosniff · Referrer-Policy: no-referrer · Permissions-Policy: camera=(), microphone=(), geolocation=(), payment=() · Cross-Origin-Opener-Policy: same-origin · HTTPS håndhæves ved kanten.

Cross-Origin-Embedder-Policy er ikke sat. Den ville få ONNX Runtime til at hente en flertrådet wasm-fil fra en blob:-URL, og script-src blokerer det, så modellen ikke kunne indlæses. Modellen kører i én tråd.

4. Kontrollér det selv

5. GDPR

Kandidaternes CV'er behandles på rekrutterens egen enhed. Operatøren modtager ikke disse CV'er. Rangeringen er en vejledning, som et menneske gennemgår. Ingen kandidat markeres som afvist.

En købers browser kalder licenstjenesten. Tjenesten gemmer licensoplysningerne i afsnit 1. Stripe gemmer sine egne betalingsoplysninger efter sine egne regler. Cloudflare hoster siden og Workeren.

6. Ærlige bemærkninger

← Tilbage til appen