Splync v1.0 til Splync v1.1
Når du tilmelder dig Splync, bliver du bedt om at indtaste din e-mailadresse og adgangskode. Som jeg tidligere har nævnt, indeholdt Splync v1.0 allerede grundlæggende sikkerhedsforanstaltninger. Dine dataoverførsler blev beskyttet af HTTPS. Vores server var sikret med SSH, så kun udvikleren kunne få adgang. Din adgangskode blev aldrig gemt i klar tekst, men blev hashet i databasen, så ingen kunne dekode den. Men hemmeligheden ved v1.0 var, at den ikke havde e-mailbekræftelse i oprettelsesprocessen. Splync blev som et MVP (Minimum Viable Product) lanceret uden denne funktion, fordi appen stadig var på et stadie, hvor kun mine venner kendte til dens eksistens. I v1.0 tjekkede appen blot, om den indtastede e-mail indeholdt et “@” mellem bogstavstrenge, og om den var unik blandt eksisterende konti.
Hvad sker der uden e-mailbekræftelse
Hvis en app tillader brugere at oprette en konto uden at verificere deres identitet, er det let at forestille sig, at nogen bruger en andens e-mailadresse til at oprette deres egen konto. Det er præcis, hvad der kunne ske. Selvom det ikke betyder, at dine data ville blive lækket, betyder det, at du ikke ville kunne registrere dig med din egen e-mailadresse, hvis den allerede var blevet brugt. Desuden kunne nogen oprette en konto med en fuldstændig fiktiv e-mailadresse. Dette virker måske ikke alvorligt i starten, men det ville blive en katastrofe, når udvikleren senere prøver at opkræve betaling eller kontakte brugeren. Jeg ville ikke engang vide, hvem den person egentlig er! Så e-mailbekræftelse var det næste skridt for Splync.
Sådan fungerer e-mailbekræftelse
I Splync v1.1 sender appen automatisk en e-mail til den adresse, som en ny bruger har indtastet, når de tilmelder sig. Denne e-mail indeholder et unikt, automatisk genereret bekræftelseslink. Ved at klikke på linket bekræfter brugeren, at de virkelig har adgang til den e-mailkonto. Når den er bekræftet, aktiverer serveren brugerens konto og gemmer den i databasen som en gyldig, verificeret bruger. Lyder det bekendt? Denne proces sikrer, at hver konto i Splync tilhører en ægte, tilgængelig person — et lille, men vigtigt skridt mod at opbygge et troværdigt fællesskab. Lad os se nærmere på, hvordan dette flow er implementeret fra et teknisk perspektiv.
Teknisk implementering af e-mailbekræftelse
Splyncs backend bruger Python/FastAPI, og mobilappen er bygget med SwiftUI. Appen håndterer kun brugergrænsefladen, mens verifikationslogik og følsomme oplysninger forbliver sikkert på serveren. I v1.1 tilføjede vi et standard e-mailbekræftelsestrin mellem “uverificeret bruger” og “verificeret bruger.” Når en ny bruger tilmelder sig, sender appen de indtastede data til serveren. Serveren har en database med MariaDB. Den gemmer brugeren som uverificeret i databasen. Adgangskoden er hashet og gemt, men kontoen er endnu ikke aktiv. På det tidspunkt genererer serveren også et unikt verifikationstoken med en udløbstid. Derefter sender serveren ved hjælp af en SMTP (Simple Mail Transfer Protocol) server en bekræftelsesmail med et sikkert, engangslink. Når brugeren åbner linket, kontrollerer serveren, at tokenet er gyldigt og ikke er udløbet. Når det er bekræftet, bliver kontoen aktiv, og brugeren kan logge ind normalt fra appen. Dette holder autentificeringen sikker og let.
Python? FastAPI? SwiftUI? SMTP? MariaDB
Hvis dette lyder som en hemmelig kode, så bare rolig — det er bare værktøjerne, der får systemet til at fungere sammen. Tænk på Splyncs tilmeldingsflow som en kundesupportcenter, der verificerer nogens identitet. “Må jeg få dit navn og din e-mailadresse?” spørger SwiftUI, den venlige operatør i receptionen. Du fortæller hende dine oplysninger, og hun siger: “Vil du være venlig at vente et øjeblik?” Hun videresender dem straks til FastAPI, kontorets interne telefonsystem. FastAPI forbinder hende til Python, bagkontorets specialist ansvarlig for verifikation. Python tjekker med MariaDB, kundedatabasen, for at registrere dine oplysninger sikkert — og markerer din status som “uverificeret.” Derefter beder Python SMTP, den eksterne budbringer, om at sende dig en bekræftelsesmail med et sikkert link. Når du klikker på linket, verificerer Python, at det er gyldigt og opdaterer din post i MariaDB til “verificeret.” Endelig lader FastAPI operatøren vide, at din identitet er blevet bekræftet, og din konto er nu aktiv. Sammen gør disse dele Splyncs verifikationsproces både menneskelig og sikker.
Det næste skridt i Splyncs sikkerhedsrejse
E-mailbekræftelse kan virke som en lille funktion, men den ændrer alt omkring tillid. Det markerer det øjeblik, hvor Splync udvikler sig fra et personligt projekt blandt venner til en offentlig app, hvor alle kan deltage med tillid. At sende et bekræftelseslink via SMTP føles endda som Splyncs første håndtryk med en ny bruger. Bag kulisserne lægger denne funktion grundlaget for fremtidige forbedringer — nulstilling af adgangskoder, multifaktorautentificering og kontogendannelse. Hvert sikkerhedslag bygger oven på det forrige. Med e-mailbekræftelse tager Splync v1.1 et meningsfuldt skridt fremad — og gør håndtering af delte udgifter ikke kun bekvemt, men virkelig pålideligt.