# Security and scope – ArcVert Demo AS

## Formål

Demoen skal bevise at ArcVerk kan fungere som en fleksibel, lisensbasert kontrollflate uten å bli kundenes regnskaps-, lønns-, HR-, HMS- eller driftskritiske hovedsystem.

## Sikkerhetskontroller som er implementert i demoen

- passord hashes med Node.js `scrypt` og tilfeldig salt
- generiske feilmeldinger ved feil innlogging
- begrensning av innloggingsforsøk
- generell request rate limiting
- tilfeldig serverbasert session-token
- `HttpOnly` og `SameSite=Strict` session-cookie
- `Secure` cookie når løsningen kjøres via HTTPS/reverse proxy
- tilfeldig CSRF-token på alle endrende API-kall
- same-origin-kontroll på endringer
- serverbasert RBAC
- tenant avledes fra session
- frontend kan ikke velge tenant i API-kall
- request body-grense
- validering av ID-er, tekst, tall, datoer og lenker
- sikkerhetsheadere og streng Content Security Policy
- ingen tredjeparts JavaScript eller CDN-er
- audit-logg uten passord eller tokens
- atomisk lokal lagring via midlertidig fil og rename
- automatiske tester av tilgang, CSRF og tenant-isolering

## Det demoen ikke påstår

Demoen er ikke penetrasjonstestet eller sikkerhetssertifisert. Lokal JSON-lagring og prosessinterne sessions er valgt for å gjøre ZIP-en kostnadsfri og enkel å starte. Dette er ikke riktig produksjonslagring for en kommersiell multi-tenant SaaS-tjeneste.

## Data som finnes i demoen

Kun fiktive data:

- fiktive navn og e-postadresser
- fiktive app- og nettsidemetrics
- fiktivt økonomisammendrag
- fiktive connector-statuser
- fiktive mål, varsler og hurtiglenker

Ingen ekte kundedata, sluttbrukerprofiler, fakturaer, bankdata, helseopplysninger, kildekode eller integrasjonstokens følger med.

## Produksjonsgrense

ArcVerk bør lagre:

- ArcVerk-brukere og roller
- dashboardkonfigurasjon
- aktiverte connectors
- aggregerte metrics
- datoferskhet og connector-status
- nødvendige audit- og sikkerhetslogger

ArcVerk bør som standard ikke lagre:

- komplette sluttbrukerdatabaser
- rå Analytics-hendelser
- fakturaer og bilag
- bank- og lønnsopplysninger
- GitHub-secrets eller kundens kildekode
- rå serverlogger
- HMS-bilder eller helseopplysninger
- kundenes komplette dokumentarkiv

## Produksjonskrav før pilotkunde

1. Produksjonsdatabase med migrasjoner og backup.
2. Eksternt secrets-hvelv med kryptering og rotasjon.
3. HTTPS, sikre domener og stram reverse proxy.
4. MFA/passkeys for administratorer.
5. Ekte tenant-isolasjon med applikasjonskontroller og databasebeskyttelse.
6. Separate test-, staging- og produksjonsmiljøer.
7. Dataminimering, retention og sletting.
8. Overvåkning, loggkorrelasjon og hendelseshåndtering.
9. Dokumentert restore-test.
10. Databehandleravtale og underleverandøroversikt.
11. Trusselmodell for login, connectorer, metrics ingest og administrasjon.
12. Sikkerhetsgjennomgang og ekstern penetrasjonstest.
13. OWASP ASVS-baserte akseptansekriterier.
14. Ingen generell REST-connector før SSRF-beskyttelse og isolert egress er på plass.

## Operasjonell regel

ArcVerk skal være et tilleggslag for synlighet. Ingen betaling, lønn, bokføring, nødstopp, sikkerhetsavgjørelse eller kritisk varsling skal være avhengig av at ArcVerk er tilgjengelig.
