codexier.

SaaS och MVP

Säkerhetschecklista innan första betalande kund

Av CodexierPublicerad 5 min läsning

Första betalande kunden ändrar vad en bugg kostar. Innan dess är en läckt post pinsam; efteråt är den en personuppgiftsincident med en anmälningsfrist på 72 timmar och en kund som litade på er med sina uppgifter. Det goda är att de kontroller som betyder mest i det här skedet är billiga och konkreta. Den här listan är det vi går igenom innan en kunds produkt tar sin första betalning.

Inloggning och lösenord

  • Lösenordshashning med en modern algoritm (argon2 eller bcrypt) via ramverket eller leverantören, plus begränsning av antal försök på inloggning och återställning.
  • Sessioner som går ut, ogiltigförklaras vid utloggning och lösenordsbyte, och lagras i httpOnly-kakor i stället för local storage.
  • Lösenordsåterställning som aldrig avslöjar om en e-postadress finns och vars länk går ut inom en timme.
  • Tvåfaktorsinloggning tillgänglig för administratörer nu och för kunder när de frågar; B2B-köpare frågar tidigt.

Behörigheter och roller

Det vanligaste allvarliga felet i tidig SaaS är ingen listig attack utan en saknad kontroll: en användare ändrar ett id i adressen och ser ett annat företags faktura. Behörighet måste upprätthållas där datan läses, med organisationens id hämtat från sessionen och aldrig från anropet.

KontrollMinimum före första betalningSå verifierar du
Isolering mellan kunderVarje fråga filtrerad på anroparens organisation; radnivåsäkerhet om databasen stödjer detLogga in som kund A, begär kund B:s id för hand
RollerÄgare, medlem och er egen supportroll, var och en med uttrycklig behörighetslistaProva varje adminåtgärd som medlem
SupportåtkomstPersonalens åtkomst till kunddata loggas och är tidsbegränsadLäs loggen efter ett supportärende
API-nycklarAvgränsade per kund, återkallbara, visas en gångÅterkalla en och bekräfta att den gamla nyckeln nekas

Testa med två riktiga kunder ni skapat själva. Automatiska skannrar hittar inte behörighetsbuggar; en person med två webbläsarfönster gör det.

Hemligheter och miljöinställningar

Databaslösenord, nycklar till betalleverantören och signeringshemligheter läcker på förutsägbara sätt: incheckade i git, inklistrade i en chatt, inbakade i ett paket som skickas till webbläsaren. Vart och ett går att undvika med en regel och ett verktyg.

  • Hemligheter ligger i driftplattformens miljökonfiguration eller en hemlighetshanterare, aldrig i kodförrådet, och en skanner före incheckning stoppar misstag.
  • Separata nycklar för utveckling, test och produktion. En läckt testnyckel får inte röra riktiga pengar eller riktiga kunder.
  • Betalhemligheter stannar på servern. Bara publicerbara nycklar når webbläsaren, och webhooks verifierar leverantörens signatur.
  • Byt varje hemlighet som någonsin delats via chatt eller mejl, i dag, och skriv ned vem som får byta vad.

Säkerhetskopior och återställningstest

En säkerhetskopia ni inte återställt är en förhoppning, inte en kontroll. Hanterade databaser säkerhetskopierar automatiskt, men frågorna som spelar roll är om ni kan få tillbaka en viss kunds data till en viss tidpunkt, hur lång tid det tar och om fillagringen ingår.

Dagliga automatiska kopior

Databas och fillagring, sparade i minst trettio dagar, lagrade i ett annat konto eller en annan region än produktion så att ett kapat konto inte kan radera båda.

En tidtagen återställning

Återställ gårdagens kopia till en ny miljö, notera minuterna det tog och stegen som överraskade. Upprepa varje kvartal.

Återställning till tidpunkt

Slå på det om databasen erbjuder det. En felaktig migrering klockan 14:03 ska gå att återställa till 14:02, inte till senaste midnatt.

Loggning och incidentplan

Enligt GDPR ska ni kunna bedöma en incident och, om det krävs, anmäla den till IMY inom 72 timmar från att ni upptäckt den. Det är omöjligt utan loggar som säger vem som kom åt vad, och en plan kort nog för att en stressad grundare ska följa den.

  1. Logga inloggningar, adminåtgärder, dataexporter och nekade behörighetskontroller, med tidsstämplar och användar-id, sparade i minst nittio dagar.
  2. Larma på avvikelser ni kan definiera i dag: många misslyckade inloggningar, export av en hel kund, en ny administratör skapad.
  3. Skriv en incidentplan på en sida: vem som rings, hur åtkomst spärras, vilka kunder som informeras, vem som kontaktar IMY, var tidslinjen skrivs.
  4. Lista era underbiträden och var data driftas; kunderna kommer att fråga i sitt första säkerhetsformulär.

Byggdes er första version snabbt och ni är osäkra på vilka punkter som håller täcker en skalnings- och härdningsinsats precis den här listan, och ett 15-minuterssamtal räcker för att säga vilka punkter som brådskar. Priser finns på prissidan.

När det här är mer än ni behöver

Är produkten gratis, lagrar inga personuppgifter utöver en e-postadress och används av folk ni känner, gör punkterna om inloggning och hemligheter och låt resten vänta tills pengar eller kunddata kommer. Säljer ni till ett reglerat storföretag är listan golvet, inte taket; de kommer att be om SOC 2- eller ISO 27001-underlag och det bör ni planera med en rådgivare, inte en checklista. Vår GDPR-guide för SaaS-grundare täcker pappersarbetet.

Vanliga frågor

Behöver vi ett penetrationstest före första kunden?

Oftast inte. Ett penetrationstest hittar det som återstår när grunderna är på plats; att göra det före den här listan slösar det mesta av budgeten på fynd ni kunde rättat själva. Gör listan, köp sedan ett avgränsat test när en kunds inköpsprocess kräver det.

Är en hanterad plattform som Supabase eller Firebase säker som standard?

De säkrar infrastrukturen, inte era regler. Radnivåpolicyer, lagringsbehörigheter och API-nycklar är ert ansvar att konfigurera, och en felkonfigurerad policy exponerar varje rad för varje användare. Testa isoleringen mellan kunder för hand oavsett plattform.

Vad säger vi till kunder som frågar om säkerheten?

En sammanfattning på en sida av kontrollerna ovan, er driftregion, era underbiträden och er incidentkontakt. Ärligt och konkret slår en lång policy kopierad från en mall. De flesta mindre B2B-köpare accepterar det tills de växer in i formella revisioner.

Osäker på vilka punkter er produkt redan klarar?

Ta med er teknikstack och driftmiljö till ett kort samtal. Vi går igenom listan med er, säger vilka punkter som brådskar innan ni tar betalt och vad en härdningsinsats till fast pris skulle kosta.

Boka ett kostnadsfritt 15-minuterssamtal