Autentisering

Autentisering är processen att fastställa vem en användare är – att verifiera ett lösenord, en kod, en passkey eller en token från en annan identitetsleverantör. Den besvarar bara frågan om identitet. Vad identiteten sedan får göra är auktorisering, vilket är ett eget beslut.

Autentisering är inte auktorisering

Två ord, ofta förkortade authn och authz, och att blanda ihop dem är källan till en stor del av all trasig åtkomstkontroll. Autentisering styrker att du är kontoinnehavaren. Auktorisering avgör om det kontot får läsa just den här posten. En applikation som bara kontrollerar det första låter glatt en inloggad användare hämta någon annans data genom att ändra ett id i adressen.

Hur sessionen faktiskt hålls vid liv

HTTP glömmer bort dig mellan anropen, så efter en lyckad inloggning utfärdar servern något som klienten skickar med varje gång:

Var token lagras spelar roll. localStorage kan läsas av vilket skript som helst på sidan, så en enda XSS-lucka blottar den. En HttpOnly-kaka kan inte läsas från JavaScript men behöver skydd mot cross-site request forgery. Båda används i skarp drift, och ingendera är gratis.

Reglerna som håller

Lagra aldrig lösenord, bara hashar från en långsam algoritm gjord för ändamålet – bcrypt, scrypt eller Argon2. Upprätthåll aldrig en regel enbart i gränssnittet: att dölja en knapp hindrar ingen, eftersom anropet kan göras direkt. Begränsa antalet inloggningsförsök. Och betrakta en andra faktor som det mest värdefulla tillägg du kan göra, eftersom den i praktiken oskadliggör stulna och återanvända lösenord.

Färdiga leverantörer som Supabase Auth, Auth0 och Firebase Authentication finns för att det är genuint svårt att få allt det här rätt. NorthernGo-appar använder samma upplägg: .register(), .login(), .getToken() och .logout() ligger ovanpå ett hanterat identitetslager, och en app med inloggning måste dessutom erbjuda .deleteAccount() – en fungerande kontoradering krävs, eftersom GDPR artikel 17 ger användare rätt till radering.

Vanliga frågor

Är det säkert att spara en JWT i localStorage?

Det är vanligt men inte det säkraste valet. Allt JavaScript som körs på sidan kan läsa localStorage, så en XSS-sårbarhet läcker token. En HttpOnly-kaka skyddar mot det men kräver i stället skydd mot CSRF. Korta livslängder på token begränsar skadan i båda fallen.

Bygg det själv

NorthernGo förvandlar en beskrivning i ren text till en fungerande webbapp med databas, inloggning och en live-adress. Lokal AI-generering körs på ditt eget grafikkort, är obegränsad och ingår gratis i alla prisplaner.

Börja bygga gratis