Transportstyrelsens läcka förklarad

Med tanke på allt som skrivs om Transportstyrelsens läcka (eller kanske snarare ”dammen som brast”) är det många som ställer sig frågan om exakt vad det är fråga om. Jag tycker att tidningarna gör ett ganska bra jobb att förklara, men vill ändå försöka förklara det så att människor som inte själva jobbar med IT, säkerhet och databaser förstår problemet.

Jag har själv jobbat med IT på olika sätt och i olika former sedan 1990-talet (bl a drift, design, projektledning, utveckling, databas, säkerhet, upphandling/kravställning) och vet precis vad detta innebär. Och jag ser igenom de försök att skönmåla som förekommer.

Nu till huvudfrågan: varför får en myndighet eller annan samhällskritisk funktion (vissa drivs i bolagsform) aldrig någonsin göra som Transportstyrelsen? Dvs lägga ut driften av system som verksamheten är beroende av för att fungera inkl. databaser på externa molntjänster/datacentrer i andra länder?

Man skapar externa beroenden. Förlorar man kontakten med sin leverantör stannar verksamheten. För ett privat företag är det inte något stort problem. Det händer ganska sällan, och när det väl händer kan man ställa de kostnader/förluster stoppet innebär mot de besparingar/intäkter man gör. Sådana stopp beror ofta på exceptionella händelser. Krig, t ex. Och ingen förväntar sig väl att det ska gå att shoppa via t ex Webhallen eller Dustin mitt under en pågående invasion? En myndighet behöver däremot ofta fungera just i sådana situationer och får aldrig vara beroende av extern data. Samtidigt kan man faktiskt ställa sig frågan om en myndighet har de behov av skalbarhet som en molntjänst ger. Visserligen kan den externa hemsidan ha sådana behov. Men de interna databaserna? Så länge personalen på myndigheten håller sig på ungefär samma nivå och har ungefär samma arbetsbörda ligger belastningen av systemen på en ganska konstant nivå. Och de toppar som kan uppstå ibland kan man ändå ta höjd för utan att behöva ruinera sig.

Man målar in sig i ett hörn. När man väl har outsourcat driften som Transportstyrelsen gjort har man i regel också gjort dig av med alla möjligheter att själv drifta systemen. Anställda har sagts upp, infrastruktur har avvecklats, servrar har flyttats eller stängts ner. Organisationen har tappat all egen kompetens på området. Och nej, det är inte så lätt att man bara anställer nytt folk och börjar bygga upp den egna IT-verksamheten igen. Problemet är nämligen att det bara till viss del handlar om rent teknisk kompetens. Det viktigaste är verksamhetsförståelse och systemkännedom. Att bygga upp den tar ett tag för alla anställda.

För det andra förlorar man kontrollen över sin egen data. Om datan hamnar hos en osäker leverantör kan den manipuleras och modifieras utan att myndigheten i fråga vet om det. Utryckningsvägar för brandförsvaret kan ändras. Uppgifter om hur stor belastning vissa broar klarar av (läs: stridsvagn eller bara personbilar) kan ändras. En fientligt sinnad spelare kan sabotera samhällsstrukturen genom att manipulera den data som finns. Eller bara hindra myndigheten från att nå sin egen data. En DDOS-attack, för att ta någonting som många känner till? Då kan det bli stopp i myndighetens arbete eftersom systemen helt plötsligt står utan data. Beroende på hur säker anslutningen mellan systemen är vet man inte heller vilka utöver leverantören och den egna verksamheten som kan fånga upp trafiken.

Men det mest allvarliga i att släppa kontrollen över sin data är att man inte vet vem som kan komma åt den. Det har man fortfarande inte förstått på Transportstyrelsen. Katarina Fröberg säger att det inte är någon fara. De som driftar har ju inte tillgång till ”gränssnittet”. I mina ögon är det ett fullständigt genomkorkat uttalande och fel på alla sätt och vis. Det gränssnittet gör är nämligen att det begränsar tillgången till data och information! Har man tillgång till databasen – vilket man som drifttekniker i regel har – betyder det att man har tillgång till all data. Gränssnitt eller ej.

Det är sådant jag jobbar med till vardags. Jag är utvecklare och jobbar även en del med drift av olika databaser. Det innebär att jag kommer åt väldigt mycket information, liksom att jag blivit godkänd och skrivit på sekretessförbindelser för att få hantera sådant. Jag skulle tillbringa flera år bakom galler om jag missbrukade det. Och det innebär även att jag inte kommer att gå in på några detaljer om det jag jobbar med.

Men rent allmänt innebär den typen av behörighet att man inte behöver vare sig applikationer eller gränssnitt för att få ut väldigt mycket data och information.

Tvärtom, gränssnittet är bara i vägen när man väl har tillgång till databasen. Är den, som jag förmodar, välbyggd och genomtänkt kan man få fram mycket mer info genom att skriva egna databasfrågor än vad man skulle få ut via de gränssnitt som finns. Den typiske användaren av de gränssnitt som finns kan förmodligen inte koppla samman olika uppgifter med varandra, men den som har tillgång till själva databasen kan göra det. Beroende på exakt vad som finns i Transportstyrelsens databas(er) och hur långt tillbaks i tiden det finns uppgifter skulle man genom att skriva olika databasfrågor där man samkör (joinar) olika tabeller få fram t ex följande:

  • Hur många hål i tänderna piloterna på F10 i Ängelholm har sammanlagt.
  • Vilka poliser i Luleå som har släktingar som krockat med älgar.
  • Hur många bilar inrikesministerns barns yngsta dagisfrökens äldsta faster äger.

Det här är bara tramsexempel, men om uppgifterna finns i databasen kan man göra sådana sammankopplingar mellan olika delsystem som för de vanliga användarna framstår som separata system utan inbördes koppling. Många system- och databasutvecklare/databasadministratörer jobbar nämligen med just sådant till och från, men kanske med mer relevanta sökningar då.

Nu till den sekundära frågan: när kan man göra som Transportstyrelsen gjort?

Svaret är att i princip vem som helst kan göra det. Bara det inte är fråga om myndigheter eller samhällskritiska funktioner. Ibland inte bara kan man. Ibland ska man, enligt min åsikt. Om man driver ett företag som håller på med e-handel är det hål i huvudet att drifta själva e-handelslösningarna själv. Då vill man ha skalbarhet (IT-lingo för ”använda och betala för den kapacitet som behövs, men ingenting mer”) och flexibilitet. Annars måste man ha en egen serverhall som är dimensionerad för fullt tryck dygnet runt, och tekniker i beredskap som kan hoppa in när det skiter sig.

Kör man däremot t ex Amazon Web Services eller Microsoft Azure behöver man inte tänka på det. Och man behöver inte tänka på toppar heller. Eller på att belastningen är olika under olika delar av dygnet. Det är själva syftet med stora datacenterlösningar. När användarna i Europa/Afrika är aktiva sover de i Nord-/Sydamerika och Asien/Australien och behöver ingen kapacitet. Så man behöver bara dimensionera för att klara belastningen från ett visst antal tidszoner i taget. När användarna i Europa och Afrika sedan kryper till kojs vaknar man på andra sidan Atlanten, och kapaciteten används istället för att serva användarna i Nord-/Sydamerika. När de lägger sig tar användarna i Asien/Australien över, osv. Du förstår nog filosofin? Man delar på kapaciteten, eftersom alla inte behöver den samtidigt. Och skulle alla vara igång samtidigt, t ex när en ny och eftertraktad produkt börjar säljas över nätet, skalar man upp med extra kapacitet i de datacenter det handlar om.

En svensk myndighet har däremot inte det behovet och ska inte tänka så. De jobbar inte dygnet runt på Transportstyrelsen. Skalbarheten är därmed en ren kostnadsfråga. Det handlar alltså inte om att man behöver ta höjd för hög belastning, utan om att man vill slippa betala för IT-miljön under den tid på dygnet den inte används. Men framförallt handlar det om att Transportstyrelsen inte är ett företag utan en myndighet!

Så sluta leka företag om du är en myndighet. Då slipper vi det här i framtiden.

Annonser

Kommentarer inaktiverade.