Hoppa till innehåll

Säkerhet

Hur vi skyddar kunddata — vad vi gör, var den lagras, och hur vi hanterar det om något skulle gå fel.

Hosting och datalagring

All kunddata ligger på servrar i Finland, hostade via Hetzner. Applikationen är en Next.js-app med en MariaDB-databas; båda körs i samma datacenter. Skanner-arbetare (Playwright/Chromium-webbläsare) körs på samma infrastruktur — ingen skanningsdata skickas till tredje parter utöver vad som listas på vår underbiträden-sida.

Kryptering

  • I transit: All trafik mellan din webbläsare och CompliantHQ använder TLS 1.2+. Vi accepterar inte oskyddad HTTP för någon autentiserad endpoint.
  • I vila: Databasvolymer är krypterade i vila. Kund-tillhandahållna API-nycklar (t.ex. CookieScript-tokens för rikare skanningar) krypteras med AES-256-GCM och en nyckel härledd via HKDF innan lagring — se src/lib/crypto.ts.
  • Backup: Daglig snapshot av databasen, bevaras i 30 dagar. Backups är krypterade i vila och lämnar aldrig EU.

Autentisering

  • Magisk länk-inloggning. Inga lösenord lagras. Varje inloggningslänk är engångs-användbar och löper ut efter 10 minuter. Sessioner använder HttpOnly, Secure, SameSite=Lax-cookies.
  • Inga sociala inloggningar, ingen OAuth. Minskar attackytan och undviker hela klassen av cross-account-recovery-sårbarheter.
  • Per-handling-auktorisering. Varje API-endpoint som muterar data verifierar anroparens roll på org- och arbetsyta-nivå. Vi har en automatiserad auktoriseringstest-svit planerad (Q3 2026) — nuvarande täckning är manuell granskning.

Åtkomstkontroll

  • Produktionsdatabas-åtkomst är begränsad till två utvecklare, båda krävs för varje produktionsmigration.
  • Ingen utvecklare har stående åtkomst till kund-skanningsresultat i databasen; åtkomst sker via applikationens UI som arbetsyta-medlem endast.
  • Interna admin-rutter (/dashboard/admin/*) kräver både en autentiserad session och en is_admin-flagga satt i databasen.

Loggning och incidenthantering

  • Åtkomstloggar: Server-åtkomstloggar bevaras i 90 dagar, används för incidenttriage.
  • Applikationsloggar: Fel fångas via Sentry (underbiträde); vi loggar felhändelser men inte request-bodies eller PII.
  • Incidentavisering: Om vi upptäcker en säkerhetsincident som berör personuppgifter kommer vi att (a) anmäla till IMY (Sveriges dataskyddsmyndighet) inom 72 timmar enligt GDPR Art. 33 och (b) informera berörda användare utan onödigt dröjsmål enligt Art. 34.

Mjukvarusäkerhet

  • Publika beroenden spåras via package-lock.json; vi kör npm audit vid varje commit och granskar CVE:er innan deploy.
  • SSRF-skydd i scannern blockerar loopback / RFC1918 / link-local / cloud-metadata-adresser, inbäddade credentials i URL:er, och icke-standard-portar — se src/lib/security/ssrf-guard.ts och dess test-svit.
  • Indata valideras via Zod-scheman vid varje API-gräns; databas-frågor går genom Drizzle ORM med parametriserade queries.

Vad vi inte gör (än)

  • SOC 2 / ISO 27001-certifiering: Inte än. Vi är en pre-launch-produkt; certifiering ligger på roadmappen när vi har enterprise-kunder som efterfrågar det.
  • Bug bounty-program: Inte än. Säkerhetsrapporter välkomna på hello@complianthq.ai — vi bekräftar inom en arbetsdag.
  • Pen-test: Intern auktoriserings-revision genomförd Q2 2026. Externt pen-test schemalagt före publik lansering.

Rapportera en sårbarhet

Mejla hello@complianthq.ai med steg för att reproducera. Avstå från att publicera offentligt innan vi bekräftat och patchat. Vi siktar på att bekräfta inom en arbetsdag och patcha inom 30 dagar för allvarliga problem. Koordinerad disclosure fungerar för båda parter.

Säkerhet — CompliantHQ