Familjebostäder lanserar portalen Hemma Hos fullt med brister

Den vackra designen, kräver dock Silverlight 😉

Update: Portalen är nu nere för tekniskt underhåll, finally.

HemmaHos är en hyresgästportal som Familjebostäder har lanserat till sina hyresgäster. Inne på portalen kan man felanmäla och följa sitt ärende, annonsera om lägenhetsbyte och man kan också ta del av lokal information från sin bovärd och distriktschef.

Spännande tänker jag, äntligen något som kan bli riktigt lovande. Det här är mina synpunkter efter cirka 10 minuters användande.

Förhoppningen med detta inlägg är att få upp ögonen på folk att säkerhet är viktigt, fastän jag påpekat brister hos Familjebostäder för snart 1 månad sedan har inget gjorts åt detta utan de lever i sin falska trygghet tack vare deras okunskap.

Säkerhet under all kritik

Portalen som har utvecklats av konsultbolaget Know IT som åtminstone inte jag hade velat anlita till något uppdrag inom webbutveckling. Så vad är det nu som är galet?

Vid inloggningen anger du ditt personnummer och lösenord och klickar på ”Logga in”. (Tack vare att ASP.net bara tillåter ett formulär ?) har Know IT kommit på den bra ideen att de på den mottagande sidan kollar vilken knapp man tryckte på, tex om det var sökrutan eller logga in på hyresgästportalen. Där görs sedan en 302 redirect till http://hemmahos.familjebostader.goteborg.se/signon/?username=xxx&password=yyy, skitsmart eftersom detta nu lagras detta i webbläsarens historik. Den bättre fullösningen hade givetvis varit att göra en post istället.

Här visas både personnummer och lösenord på alla som loggat in från denna dator.

Vem som helst kan alltså bara börja skriva in webbadressen och får sedan upp en lista på alla som loggat in på datorn, inte alls bra att logga in på offentliga datorer med andra ord. Folk har dessutom en tendens att använda samma lösenord på fler webbsidor, vilket givetvis ni läsare inte gör?

Sessionen på portalen verkar de dock ha satt till 15 minuter, åtminstone om man ska grunda det på texten i deras dokument om portalen.

Varför loggas man ut efter 15 minuter?
Utloggningen görs av säkerhetsskäl, för att en obehörig inte ska kunna använda HemmaHos med någon annans användaruppgifter.

En första sak som tyder på att de ens haft säkerhet i åtanke.

Eftersom man endast fick fram personnummer och lösenord på folk som loggat in på den dator man är vid kan man tycka att man sitter halvsäkert i båten. Vid en fortsatt koll på flödet görs ännu fler 302 redirect varav den sista går till http://hemmahos.familjebostader.goteborg.se/signon?loginresult=xxx (xxx är alltså användarnamnet, eller rättare sagt hyresgästens personnummer.) Efter alla, i min värld, stora säkerhetsrisker vågade jag knappt testa om de var så korkade att det räckte att besöka den sista webbsidan för att loggas in. Sagt och gjort så skickar jag länken till en kompis och han blir inloggad som mig.

Vem som helst kan alltså logga in genom att endast ange personnumret på personen man vill logga in som. Smidig lösning, det tackar jag och övriga 18 000 hyresgäster för.

De två sista sakerna jag ska klaga på när det gäller säkerhet är att man bör använda kryptering, skaffa ett SSL certifikat så skickas allt åtminstone inte i klartext över Internet och sist men inte minst: lagra inte lösenord i klartext. Eftersom man kan beställa lösenordet till sin e-post och man får det gamla man hade kan de omöjligen ha lagrat mitt lösenord hashat vilket är god praxis hos alla andra företag.

Beställaren kan inget om webb

Det är helt uppenbart att de från Familjebostäder som beställde uppdraget inte har koll på Internet och hur webbsidor är tänkt att fungera. Hela portalen är gjord i Silverligt, detta eftersom reklambyrån som stod för framtagande av design skapade en som inte var anpassad till webbsidor. Citerar ur konversation med Familjebostäder:

För två år sedan fick vi ett förslag från en välrenommerad reklambyrå  😉 i stan med de visuella lösningar (dra och släpp, flytta runt sömlöst, formulär som kommer ut ur gadgetar etc) som vi nu använder. Vår konsult gav oss två alternativ för bygget av de dynamiska delarna: Java och Silverlight

Att man kan göra lull-lull med Silverlight kan jag förstå, men hur Java löser problemet mer än ASP.NET, PHP osv förstår jag inte, någon annan kanske har detta svar. Javascript kan jag köpa, men vem vill ha Javascript och AJAX-lösningar när man kan ha Silverlight.

Jag frågade Familjebostäder om man ens tänkt på konsekvenserna det får att inte använda vanliga webbstandarder, att Silverlight inte finns till alla operativsystem, att synskadade inte kan använda sina program som baseras på texten.

Inte speciellt många har hört av sig angående problem med att logga in eller att få fram sidan beroende på problem med Silverlight.

Ett svar som egentligen inte säger så mycket mer än att de uppenbarligen haft samtal från folk som ej kunnat använda deras portal.

Påpekade även problemet att när man klickade på en länk som ska öppnas i ett nytt fönster fastnar det hos Firefox, något som beror på att man kodat felaktigt och tillika detta fick jag ett underhållande svar.

Pop-up-blockering i Firefox är en installningsfråga i din webbläsare. Enkelt att fixa själv.

Jag som är van användare av Internet och dessutom jobbar som webbutvecklare vet hur jag gör detta, men det är bara fel att be alla användare att ändra deras inställningar.

När jag testade portalen först fungerade heller inte vissa funktioner såsom att skapa serviceanmälan i Firefox, något som dock gick bra i internet Explorer, på grund av alla fel som upplevdes kan de knappt ha testat sidan själva i andra webbläsare än Internet Explorer. Nu fungerar dock sidan bra även i Firefox, tummen upp.

Avslutningsvis vill jag bjuda på ännu en sak jag fick av Familjebostäder när de skulle felsöka varför min serviceanmälan på portalen inte ville sparas när jag använde Firefox.

Om du kan tänka dig att skicka p-nr och lösenord ska jag titta på detta ihop med vår ärendehanteringsguru.

Trimma hastigheten på din webbplats

För några dagar sedan gick Google officiellt ut med att en webbplats laddningstid nu är en del av viktningen när rankning sker, om än en ganska liten. Även om den i deras interna algoritm är liten så påverkar den dock besökarnas upplevelse vilket är minst lika viktig att förbättra. Nedan ges några relativt enkla och bra tips på hur du kan förbättra denna aspekt.

  • Komprimera med Gzip
    Genom att komprimera webbsidan innan den skickat till klienten överförs mindre data, klienten packar sedan upp allt innan det visas i webbläsaren. Om sidan använder PHP kan man övers på sidorna lägga in följande kod:

    <?php if(!ob_start("ob_gzhandler"))ob_start(); ?>
  • Kombinera filer
    Genom att kombinera många mindre filer till en större blir det mindre anrop som behöver göras och därför även mindre data.
    Exempel på saker är att kombinera bilder med sprites, lägga ihop JavaScript i färre filer.
  • Minimera DNS-uppslagningar
    Varje ny domän/subdomän slås upp med DNS, genom att inte missbruka antal externa uppslagningar spar man tid. Bra tips på större webbplatser är att lagra statiska filer såsom bilder, js-kod och css på en egen subdomän som har en optimerad webbserver för filöverföring och inget annat. Loopia erbjuder exempelvis Autobahn, se specifikt för WordPress.
  • Minska filernas storlek
    Komprimera bilder, CSS och JavaScript kan krympas i storlek genom att använda speciella program, t.ex. YUI Compressor eller minify,  som tar bort onödiga tecken.

För de flesta som inte har alltför djup teknisk kompetens kommer man långt genom att

  • minimera antal filer som laddas in
  • komprimera bilder, js och css
  • ange höjd och bredd på alla bilder så kan webbläsaren rendera sidan i förväg
  • läs in filer från ett begränsat antal domäner/subdomäner
  • om du har wordpress utnyttja plugins som cachar (skapar statiska filer, så övriga ovanstående punkter är bra kika på ändå)

Relaterade verktyg