Hoppa till innehåll

Sammanfattning - "Stå-upp"-vlogg (2024)

Från och med nu handlar vloggarna enbart om 1DV026. Den här inspelningen gäller kursvecka 12-13.

Kursblocken blir nu längre: 12-13, 14-15, 16-19 och till sist vecka 20. Det blir mindre ny teori och mer eget arbete, men låt dig inte luras av att det bara finns en inspelning och lite att läsa. Materialet kräver en hel del eftertanke.

Mycket på webben kan vi använda anonymt, men vill vi komma åt mer behöver vi tala om vem vi är, och applikationen behöver kontrollera att vi har rätt att komma åt det vi efterfrågar. Det är vad access control handlar om. Föreläsningen reder ut skillnaden mellan autentisering (vem är du?) och auktorisering (vad får du göra?), och visar hur man hanterar lösenord säkert: de ska sparas så att applikationen aldrig själv kan läsa dem.

Det finns alltid en diskussion om man ska bygga inloggningen själv, använda ett ramverk eller låta användaren logga in via till exempel Google, och på den svenska marknaden kanske med BankID eller Freja eID. Här bygger du den själv, eftersom det är viktigt att ha gjort det. Det här är ett område där man inte får göra fel, så passa på att göra dina misstag nu.

Framtidens inloggning är passkeys, där användaren inte har något lösenord alls. Stödet rullas ut brett, men synkningen av nycklar mellan olika plattformar är inte löst, så lösenordshanterare fortsätter att vara relevanta. Passkeys tas inte upp i den här kursen, utan i årskurs två.

Föreläsningen spelades in under pandemin. I dag skulle kursledningen tala mer om lösenfraser än om lösenord, och presentationen har uppdaterats på några punkter.

Den vanligaste frågan är var exemplet finns som man kan kopiera in i sin CRUD-applikation. Det finns inget, och det är med avsikt. Titta på inspelningen, läs presentationen och förstå hur det fungerar, så klarar du av att implementera det själv.

En annan vanlig fråga är vilken modul man ska använda för att skydda sig mot CSRF, som togs upp i kursvecka 5. Tidigare lade man in en token som servern skickade till klienten och som klienten skickade tillbaka. I dag löses det smidigare med cookie-attributet SameSite: med SameSite=Lax skickas sessionscookien inte med förfrågningar som kommer från andra webbplatser. Det är helt okej att förlita sig på det för CSRF-skyddet, men sätt attributet uttryckligen, eftersom webbläsarna har olika standardvärden. Komplettera gärna med en Content Security Policy, till exempel via Helmet.

Deadlines i kursledningens kurser ligger klockan 17.00. Förutom att det inkluderar fler studenter har stödsystemen en tendens att krångla vid stora inlämningar, och då är det mycket lättare att lösa problemen på kontorstid än en fredagskväll.

CCBY