Hopp til hovedinnholdet

Hva koden faktisk gjør

Tjue mekanismer sjekket mot koden 16.09.2026. Én setning for hver.

Sjekket mot koden 2026-09-16

  1. Hver databaseforespørsel går gjennom en Prisma-utvidelse som knytter den til forespørselens organisasjon, og en forespørsel uten organisasjonskontekst feiler i stedet for å returnere rader.

  2. TOTP-seeds og tredjepartstokens lagres kryptert med AES-256-GCM, med en nøkkelring som tillater nøkkelrotasjon uten å miste tilgang til eksisterende data.

  3. Hver HTML-respons får en Content-Security-Policy med en tilfeldig nonce per forespørsel, og et inline-skript uten denne noncen kjører ikke.

  4. Hvert tilstandsendrende kall som bærer en medarbeiderøkt må sende et CSRF-token som samsvarer med informasjonskapselen, og håndhevingen kan ikke slås av i produksjon.

  5. En lenke til godkjenningskvittering er signert med HMAC-SHA256, signaturen verifiseres før eventuelle databaselesinger, og alle feil returnerer samme 404.

    En delingslenke er et tilfeldig token på 32 byte der bare SHA-256-verdien lagres, med utløpstid, valgfritt passord og umiddelbar tilbaketrekking. En tilbaketrukket, utløpt eller ukjent lenke svarer med samme 404.

  6. Hver opplastede fil skannes med ClamAV på en privat VM i VPC-en før det opprettes en visningskopi av den, og en fil uten et rent resultat holdes tilbake og blir ikke levert.

    Filer over 2 GiB holdes tilbake og skannes ikke. En tilbakeholdt fil blir ikke servert.

  7. En kunde går inn i portalen uten konto, med kode, lenke, telefon eller e-post; bare en HMAC av koden eller tokenet lagres, en inngang utløper (30 dager som standard), og deaktivering kobler fra alle enheter innen to minutter.

  8. Aktivitetsloggen kan bare utvides i applikasjonen: ingen kodebaner oppdaterer eller sletter en revisjonsrad, og en CI-port feiler ved ethvert forsøk på å legge til en.

  9. Hver API-rute er hastighetsbegrenset per bruker eller klient-IP via en delt Redis-teller på tvers av instanser. Når Redis er utilgjengelig, synker grensen til en tredjedel per instans i stedet for å åpne opp.

  10. Økten er en signert JWT-informasjonskapsel (HS256) med HttpOnly, Secure og SameSite=Lax, utløper etter to inaktive timer og kan tilbakekalles på alle enheter samtidig. Passord lagres som scrypt-hasher, og gjenopprettingskoder for MFA lagres kun som HMAC-er.

  11. Kundeportalen, delingslenker, kvitteringer, aksept av invitasjoner samt sidene for fullføring av registrering og tilbakestilling av passord har noindex, og robots.txt avviser /api/, /admin, /app og /coupons.

  12. En eier av et arbeidsområde eksporterer dataene og sletter arbeidsområdet eller sin egen konto uten å spørre oss. Slettingen låser ute umiddelbart, og permanent sletting kjører automatisk etter 30 dager, tallet som står i vilkårene, personvernerklæringen og DPA-en.

  13. Hemmeligheter monteres fra Secret Manager ved distribusjon, valideres ved oppstart (minimumslengde, plassholderverdier avvises, krypteringsnøkkelen må være 32 tilfeldige byte) og sensureres fra logger og feilrapporter.

  14. Planlagte kall autentiseres med en HMAC-SHA256-signatur innenfor et fem minutters vindu eller et Google OIDC-token, og en statisk bearer-hemmelighet avvises i produksjon.

  15. Hver utgående forespørsel til en brukerdefinert adresse (Drive-import, webhooks) sjekkes mot private adresseområder, inkludert etter viderekoblinger og ved tilkoblingstidspunktet.

  16. En API-forespørselstekst er begrenset til 1 MiB og sjekkes mot et strengt skjema som avviser ukjente felt før koden berører den.

  17. Filtypen bestemmes ut fra selve bytene i stedet for nettleserens deklarasjon, og en fil som overskrider planens kvote eller grensen per fil, avvises før opplasting.

  18. Hver objektsti sjekkes mot organisasjonens prefiks før signering, lesing eller sletting, og filer leveres via tidsbegrensede signerte URL-er (6 timer for visning, 5 minutter for nedlasting).

  19. AI-forslag lagres som forslag og tas i bruk først etter at en person har godkjent dem, og AI-kode kan ikke åpne et systemomfang over kundedata; en CI-port håndhever dette.

  20. Hver distribusjon må først bestå hele testpakken med dekning, kodeporter og npm audit på høyt nivå; en produksjonsdistribusjon går også gjennom en canary med beredskapstester.

Hvor serverne kjører

Taskeds servere, database og filer ligger i Google Cloud-regionen europe-west1 (Belgia).

Underdatabehandlere (e-post, SMS, betalinger, feilrapportering, AI-leverandører) og Google Analytics, som måler bruken av nettstedet og appen, behandler data utenfor denne regionen.

Hva du er ansvarlig for

  • Portallenker, delingslenker og kvitteringslenker fungerer som adgangstegn: den som har dem, slipper inn.
  • MFA er valgfritt per konto, og kreves ikke på alle kontoer.
  • En midlertidig sperret fil krever at et medlem av arbeidsområdet foretar seg noe.
  • Slettede data kan gjenopprettes i 30 dager, og er borte etter det.

Start uten kort

Fjorten dager, alt slått på. Opprett et arbeidsområde, fortell AI-en hvordan du jobber, og inviter en kunde til å godkjenne.

Spørsmål? Skriv til oss

Vi svarer direkte på nettstedet når vi kan, og en person følger opp om nødvendig. Ingen e-postliste.