Whitepaper: Hur vi lagrar din data
Teknisk och juridisk översikt över Kontrollplan Assistentens datahantering.
Det här dokumentet beskriver exakt vilken data Kontrollplan Assistenten samlar in, var den lagras, hur länge den sparas och vem som kan komma åt den. Allt som står här gäller produktionsmiljön på itpbuilder.com.
Vi följer principen om dataminimering: vi sparar bara det som krävs för att leverera tjänsten, och du kan när som helst radera ditt konto och all kopplad data.
0. Vårt säkerhetsåtagande
Säkerhet är inte en eftertanke i Kontrollplan Assistenten — det är förutsättningen för att du över huvud taget ska kunna lita på en AI med dina projektunderlag. Vi behandlar varje uppladdat dokument som om det vore vårt eget kontrakt: det krypteras under transport, isoleras per användare, och raderas på din begäran.
Vi bygger och driver tjänsten i enlighet med principerna i ISO/IEC 27001 för ledningssystem för informationssäkerhet. Det innebär konkret att vi tillämpar:
Vi är inte i nuläget certifierade av ett oberoende revisionsorgan mot ISO/IEC 27001 — men kontrollramverket vi arbetar efter är designat för att kunna passera en sådan revision, och vi uppdaterar det löpande när hotbilden ändras.
1. Vilken data vi behandlar
Vi samlar inte in: personnummer, betaluppgifter, exakt IP-adress i klartext, eller innehåll från andra applikationer.
2. Var datan lagras fysiskt
All databas- och autentiseringsdata lagras hos Supabase (managerad PostgreSQL) i EU-regionen. Supabase agerar databehandlare och har DPA enligt GDPR.
Applikationen körs på Cloudflare Workers (edge-runtime). Workers håller ingen persistent data — de tar emot din request, anropar databasen och AI-modellen, och returnerar svaret.
AI-inferensen sker via vår AI-gateway som vidareförmedlar förfrågningar till underliggande LLM-leverantörer. Innehållet skickas över TLS, sparas inte i gateway och används inte för modellträning.
Inga uppladdade dokument lagras på disk hos oss. De finns i minnet under den korta tid som en request varar (typiskt < 60 sekunder).
3. Tabeller och åtkomstkontroll
Databasen har två publika tabeller:
profiles — id (= auth-användar-id), e-post, valt språk, tidsstämplar.kontrollplan_history — id, user_id, projektmetadata, genererat resultat (jsonb), filnamn (inte filinnehållet), hashat IP, tidsstämpel.Båda tabellerna har Row Level Security (RLS) aktiverat. Policyn auth.uid() = user_id gör att en inloggad användare bara kan läsa, skapa eller radera sina egna rader. Det är databasen själv som upprätthåller detta — även om appkoden skulle innehålla en bugg kan en användare aldrig se en annan användares historik.
Inga policies tillåter anonym (icke inloggad) läsning av användardata.
4. Kryptering
5. Autentisering
Inloggning sker via magic link — du anger din e-postadress och får en engångslänk. Inga lösenord lagras.
Sessionen lagras som JWT i webbläsarens localStorage. Tokens roteras automatiskt och går ut efter inaktivitet.
Alla server-anrop som rör konto-specifik data validerar JWT på serversidan via Supabase Auth innan databasen kontaktas.
6. Hur ditt underlag skickas till AI
När du klickar på "Generera": vi skickar (a) extraherad text från din TB, (b) eventuell stödkontext, (c) dina instruktioner och (d) önskat språk till vår AI-gateway. Hård gräns: max 80 000 tecken per chunk och 200 000 tecken totalt per request.
AI-leverantören (t.ex. Google Gemini, OpenAI) får texten via en server-till-server-anslutning. Enligt avtal med leverantörerna används inte din data för att träna deras modeller.
Råinnehållet i din TB sparas inte efter att svaret genererats. Endast det strukturerade resultatet sparas i kontrollplan_history, kopplat till ditt konto.
7. Lagringstid och radering
Begär kontoradering genom att mejla oss (se kontakt nedan) — vi bekräftar inom 7 arbetsdagar.
8. Dina rättigheter enligt GDPR
Du har rätt att: få ut all data vi har om dig (registerutdrag), rätta felaktiga uppgifter, radera ditt konto, invända mot behandling och flytta din data (dataportabilitet). Skicka begäran till kontaktadressen nedan.
Personuppgiftsansvarig är den juridiska person som driver itpbuilder.com. Tillsynsmyndighet i Sverige är Integritetsskyddsmyndigheten (IMY).
9. Underleverantörer (sub-processors)
Vi använder inga analytics- eller tracking-cookies från tredje part.
10. Incidenthantering
Vid misstänkt säkerhetsincident följer vi processen i docs/security-policy.md: utredning inom 24 timmar, notifiering till drabbade användare inom 72 timmar (GDPR Art. 33), och post-mortem som publiceras inom 14 dagar.