Beveiliging
Versie 1.3 · Laatst bijgewerkt op 6 november 2026
SpectIQ verwerkt gegevens van bouwkundig inspecteurs en hun
opdrachtgevers. Beveiliging is bij ons een ontwerpprincipe. Hieronder de
technische en organisatorische maatregelen die wij hebben getroffen, in
lijn met artikel 32 AVG.
Encryptie
- In transit: al het verkeer tussen browser, server en sub-verwerkers gebruikt TLS 1.2 of hoger. Onze server dwingt HTTPS af; HTTP-requests worden automatisch omgeleid.
- At rest: de Postgres-database draait op onze eigen server bij netcup (Duitsland) en gebruikt schijfencryptie. Foto's, spraakmemo's en bijlagen staan in S3-compatibele opslag van Railway (technisch geleverd door Tigris, EU-regio) met server-side encryptie. PDF-exports volgen dezelfde encryptie.
-
Geheimen: API-keys en database-credentials staan
uitsluitend in de environment-variabelenstore van onze Dokploy-server,
nooit in de code-repository. Sessiecookies zijn
httpOnly,secure(in productie) ensameSite=lax.
Authenticatie en toegang
- Aanmelden gebeurt via een eenmalige code per e-mail (OTP); geen herbruikbare wachtwoorden waarmee credentials kunnen lekken.
- Sessies verlopen na 30 dagen inactiviteit. Verdachte sessies kunnen centraal worden ingetrokken.
- Toegang tot data is altijd workspace-gescoped — een gebruiker ziet alleen rapporten en klanten van werkruimtes waarvan hij of zij lid is. Dit wordt op database-niveau afgedwongen via een workspace-middleware in elke API-route.
-
Platform-administratierechten zijn voorbehouden aan een vooraf
geconfigureerde lijst e-mailadressen
(
PLATFORM_ADMIN_EMAILS); deze rol is auditbaar in de gebruikerstabel.
Back-ups en herstel
-
Elke nacht draait er een Postgres-back-up via
pg_dump. De dumps worden opgeslagen bij Tigris via Railway (EU) en, als kopie bij een andere aanbieder, in Cloudflare R2 (EU). De productie-bucket met foto's, spraakmemo's, bijlagen en PDF-exports wordt elke nacht gekopieerd naar een aparte bucket bij Tigris via Railway, met een eigen sleutel. - Van de database bewaren we de laatste 30 nachtelijke back-ups (circa 30 dagen). Foto's en bijlagen die in productie zijn verwijderd of overschreven, blijven 28 dagen bewaard in een tweede aparte bucket en worden daarna bij de eerstvolgende geslaagde back-up automatisch gewist, normaal gesproken binnen 30 dagen na verwijdering.
- Foto's en bijlagen staan in de objectopslag (Railway/Tigris) en worden daar redundant opgeslagen binnen de EU.
- Het herstelproces staat beschreven in onze interne documentatie.
Software-leveringsketen
- Iedere wijziging gaat via een pull-request. CI draait automatisch typecheck, lint, formatter en unit-tests; merges worden geblokkeerd als die falen.
- Promotie naar productie verloopt via een aparte "Promote to production" PR die een second-eye review krijgt voordat deze wordt samengevoegd op de productiebranch.
- Database-migraties zijn additief, idempotent en self-healing — de migrate-runner herkent reeds toegepaste schema's en weigert nooit een deploy tenzij de schema-staat onbekend is.
- Kwetsbaarheden in dependencies worden bewaakt via Dependabot.
Logging en monitoring
- Toepassingslogs (op onze eigen server), aanmeldingsevents en audit-trails zijn beschikbaar voor incident-onderzoek.
- Voor AI-aanvragen gebruiken wij Langfuse om kwaliteit en latentie te bewaken — zie de sub-verwerkerspagina voor wat daar wordt opgeslagen.
Incidentprocedure
Bij een geconstateerd datalek volgen wij artikel 33 AVG: binnen 72 uur na ontdekking melden wij het incident bij de Autoriteit Persoonsgegevens, en informeren wij betrokken klanten zodra dat praktisch mogelijk is. Vermoedt u een lek? Stuur een mail naar security@spectiq.nl.
Verantwoordelijke openbaarmaking
Heeft u een beveiligingskwetsbaarheid ontdekt? Wij waarderen verantwoordelijke openbaarmaking. Stuur details naar security@spectiq.nl en geef ons een redelijke termijn (typisch 60 dagen) voordat u publiceert. Wij erkennen onderzoekers in onze hall of fame na bevestiging.
