carsten hansen bloghoved

Hvordan sikrer du data i forbindelse med outsourcing af udviklingsprojekter?

Når der sker brud på datasikkerheden, står der i langt de fleste tilfælde et menneske bag. Det menneske behøver ikke befinde sig i Ukraine, Indien eller et helt tredje sted ude i verden, det kan lige så godt befinde sig i Danmark i din egen virksomhed. Det sidste halve år har vi i Danmark både haft en Nets-medarbejder, der udleverede kreditkortoplysninger, og en medarbejder hos SAS, som udleverede passagerlister. Så datalæk kan altså finde sted alle steder, hvor der er en medarbejder, som ikke helt forstår at følge loven.

En sikkerhedsbrist forårsaget af en menneskelig ”fejl” kan altså i princippet ske både in-house og hos din sourcingvirksomhed. Selvfølgelig kan risikoen være højere, når du outsourcer, fordi der så er nogle andre faktorer, der spiller ind:

  1. Kulturen kan være anderledes i det land, du outsourcer til, og det er ikke sikkert, at landets udviklere har det samme syn som dig på, hvornår noget er rigtigt og forkert.

  2. Sourcingpartneren bærer ikke samme risiko ved udviklingen, som du selv gør, og derfor har udviklerne ikke nødvendigvis den samme ansvarsfølelse over for opgaven.

Rigtig meget afhænger derfor af din tillid til din sourcingpartner og af kvaliteten af de udviklere, der arbejder med din opgave.

Men derudover er der en række forholdsregler, du kan tage, når du outsourcer din softwareudvikling til en anden virksomhed. Forholdsregler som kan minimere risikoen for, at en udvikler bliver fristet til at ”dele” din udvikling med andre:

  1. Sørg for, at data og kildekode kun ligger på en server i din virksomhed. I stedet for at flytte rundt på data, kan I give softwareudviklerne adgang via en terminalserver.

  2. Undgå browseradgang og programmer som Skype, MSN m.v. til udviklerne, når de sidder på din opgave. På den måde kan de ikke kopiere data fra dit udviklingsprojekt. Hvis du vil være helt sikker på, at de ikke kan hente data ud, kan du kan desuden de-aktivere mulighed for ”copy”, ”print screen” og ”print”.

  3. Kræv dedikerede udviklere til din opgave, så de ikke fordeler deres tid mellem dit og en konkurrents projekt og dermed måske lader sig inspirere lidt for meget på kryds og tværs.

  4. Aftal, at der er låste døre ind til de enkelte projekter, så det kun er de udviklere, der arbejder på din opgave, som kan komme i nærheden af projektet.

  5. Sørg for at have alle forholdene omkring datasikkerhed som en del af kontrakten. Så har du i værste fald altid noget at holde sourcingpartneren op på.

Efter min mening er der altid en risiko for, at data kommer i de forkerte hænder, når mennesker er involveret. Selvom jeg personligt altid vælger at tro på det bedste i mennesker, findes der brodne kar, som ikke altid kan kende forskel på dit og mit.

Relateret indhold

Carsten Hansens billede
Carsten Hansen er CEO hos den nordjyske it-virksomhed Conscensia, som håndterer outsourcing af softwareudviklingsprojekter ved at finde, integrere og fastholde de rigtige menneskelige ressourcer i Ukraine. Carsten har 25 års erfaring med softwareudvikling, og han har blandt andet været med til at kvalitetssikre danske it-uddannelser. På bloggen kommer han bag om outsourcing af softwareudviklingsprojekter.

Kommentarer (15)

Kommentarer (15)
David Konrad

Undgå browseradgang og programmer som Skype, MSN m.v. til udviklerne, når de sidder på din opgave. På den måde kan de ikke kopiere data fra dit udviklingsprojekt. Hvis du vil være helt sikker på, at de ikke kan hente data ud, kan du kan desuden de-aktivere mulighed for ”copy”, ”print screen” og ”print”.

Hvis man ser bort fra det lettere komiske i forslaget, så kan dette vel kun praktiseres ifb "inhouse outsourcing" (eller hvad man nu kalder det på moderne dengelsk) - eller er det en ydelse/"forholdsregel" f.eks Conscensia leverer, outsourcing hvor udviklerne med garanti ikke har browseradgang, ikke kan emaile, ikke kan copy-paste?

David Konrad

Jeg siger bare good luck med at sikre at professionelle udviklere ikke kan kopiere data... :-)

Netop, helt ude i hampen. Og hvis man virkelig bare vil realisere "forholdsreglerne" skal man jo gå helt anderledes radikalt til værks; f.eks. må "browseradgang" dække over at fjerne netværkskortet fysisk fra computeren, samt strippe udvikleren fra yderst til inderst for mobiltelefon, USB, SD-kort mv inden vedkommende lukkes ind i et WIFI-neutralt rum uden vinduer. Som sagt "lettere komisk", men det kunne være interessant at høre om det er "forholdsregler" eller ydelser Carsten Hansens firma forsøger at levere i praksis, sådan IRL, eller om det (med al respekt) er ren BS.

Mikkel Knudsen

"Undgå browseradgang og programmer som Skype, [...]"
så løsningen er i praksis, at regulere de ansattes maskiner, som om man havde med en 7.-klasse at gøre.
Det er klart, at man som ansat ikke kan gøre så meget umoralsk, når man er umyndiggjort ved sin arbejdsstation.

Mon ikke det til gengæld så kniber med at skaffe kvalificeret arbejdskraft, som vil finde sig i at blive behandlet som en fem-årig med en ræv bag øret?

Jeg går ud fra, at dé udviklere nok i stedet søger arbejde hos nogle virksomheder, som behandler de ansatte som voksne.

David Rechnagel Udsen

Undgå browseradgang og programmer som Skype, MSN m.v. til udviklerne, når de sidder på din opgave. På den måde kan de ikke kopiere data fra dit udviklingsprojekt. Hvis du vil være helt sikker på, at de ikke kan hente data ud, kan du kan desuden de-aktivere mulighed for ”copy”, ”print screen” og ”print”.

Tja, men er det ikke muligt at de har et kamera med som de kan tage billeder af skærmene med? Måske du også skal forbyde den slags hjælpemidler.

Og hvad med hukommelse? Potentielt kan udviklerne huske hvad de har arbejdet med, så her bør man nok drikke dem patte stive, så de ikke kan huske hvad de har lavet når de forlader kontoret igen.

Desuden optræder din data jo i praksis i deres hukommelse på deres maskine, i det de skal kunne se den deres egen maskine. Man bør nok undgå internt lager og fastpladelager på deres datamater, da det jo kunne være muligt at data blev gemt i hukommelsen, selvom de har lukket programmet.

Aftal, at der er låste døre ind til de enkelte projekter, så det kun er de udviklere, der arbejder på din opgave, som kan komme i nærheden af projektet.

Hvad med sluser og ingen vinduer? Forestil jer at nogen på den anden side ad gaden kigger ind af vinduerne med en kikkert! Desuden, bør man nok oprette et separat internet, da det jo er muligt nogen lytter på forbindelsen mellem Ukraine og Danmark, f.eks. Putin. En mere sikkert løsning er at sende medarbejdere til Ukraine med disketter med det væsentlige data på, overvåg de ukrainske udviklere mens de arbejder og der tag disketten med hjem når opgaven er fuldført.

Og da man jo ikke nødvendigvis kan stole på sin medarbejder ikke er i ledtog med de ukrainske udviklere, så bør man nok sende to andre medarbejdere med til at overvåge vedkommende.

Mikkel Knudsen

Hvad med bare at stille samme arbejdsforhold til rådighed, som når man er til skriftlig eksamen uden hjælpemidler?
Jeg er sikker på, at Ukraine har masser af sportshaller der egner sig til e̶k̶s̶a̶m̶e̶n̶s- udviklings-brug :)

Der skal man bare huske, at udviklerne ikke må skrive på gennemskrivningspapir, og at kladder skal destrueres efter projektets afslutning.

Troels Henriksen

Historien siger, at da den mongolske krigsherre Ghengis Khan døde, da blev han begravet et hemmeligt sted, og dem, der vidste hvor han var blevet begrabet, blev slået ihjel. Dem, der slog disse ihjel, blev ligeledes dræbt, for helt at udrydde enhver viden om Ghengis Khan's sidste hvilested.

Man skal lære af fortiden, så det er oplagt, at man i forbindelse med outsourcing nemt kan lade sig inspirere af denne mongolske politik for behandling af fortrolige virksomhedsdata.

Mikkel Knudsen

Der kørte på et tidspunkt en række film om en gruppe smalltime-kriminelle på DR1.
I et af afsnittene fik lederen af gruppen her en svensknøgle i hovedet, så han faldt om.[0]

Det interessante var, at fyren fik hukommelsen igen, straks efter han atter var blevet slået hårdt i hovedet.

Hvis man indførte lignende ordning i receptionerne i Ukraine, ville man være sikret, at de ansatte kun kunne huske, når de var på arbejde.

[0] http://images3.cinema.de/imedia/0261/2290261,MRum1fCz2O6_eLuS_9LWpLPsl+_...

Carsten Hansen Blogger

Meget muntre kommentarer i alle kan komme med, men jeg syntes, det kniber lidt med det saglige ind imellem.

Jeg er helt enig med David i, at det er umuligt at sikre sig 100 % imod al form for kopiering og misbrug, men jeg vil samtidig vove den påstand, at det heller ikke er ønskeligt. Lidt på spidsen kan man (lettere usagligt) sammenligne det med, at den eneste 100 % sikre måde at undgå børn er seksuel afholdenhed, men det er ikke den sjoveste måde at imødegå problemstillingen. Man kan spørge sig selv, hvorvidt man kan sikre sig imod direkte kopiering? Og ja, det kan man. Kan løsningerne nogle gange give andre problemer? Ja, det kan de bestemt. En kunde har lukket af for browseradgang, kopiering m.m. i de terminalsessioner, der køre imod deres systemer, hvilket ind imellem giver det problem, at udviklerne ikke kan benytte google translate, hvis de falder over en dansk kommentar i det kode, de arbejder på. På den måde skaber del-løsningnen nogle andre problemer, som man også skal have med i sine overvejelser.

Men det at man sikrer sig imod browseradgang i nogle sessioner er ikke det samme, som at man ikke tillader browsere i andre sammenhænge.

Det er klart at man kan tage et billede af sin skærm, skrive billedet ud, OCR-scanne billedet og få ting ind i et dokument et andet sted på den måde, men før man går igennem det besvær i stedet for blot at skrive de 20 linier kode, der var på skærmen, en gang til, så skal man nok have fået en svensknøgle i hovedet.

Troels Henriksen

Det er klart at man kan tage et billede af sin skærm, skrive billedet ud, OCR-scanne billedet og få ting ind i et dokument et andet sted på den måde, men før man går igennem det besvær i stedet for blot at skrive de 20 linier kode, der var på skærmen, en gang til, så skal man nok have fået en svensknøgle i hovedet.

Så formålet med øvelsen er at beskytte data, som man er bange for bliver stjålet, men som omvendt ikke er så værdifulde, at man regner med at den potentielle angriber gide gøre selv den mest trivielle indsats?

Kan du uddybe hvad det helt præcist er der falder i denne kategori?

Martin Jünckow

Carsten: Jeg tror man får gladere og mere produktive udviklere ved at give dem ansvar og ikke bevidst sabotere deres muligheder for at udføre deres arbejde.

Er det virkelig den slags slave-forhold I går ind for hos Conscensia?
Min lyst til at outsource er bestemt ikke blevet større.

Morten Grantzau

Jeg har igennem flere år arbejdet med outsourcing (eller "outstaffing" i mit tilfælde). Der findes mange gode tanker bag de råd, der gives i artiklen her, men for at distribuerede teams skal have succes (både for virksomheden og for det team der arbejdes i) så er der nogle andre ting, der gør sig gældende efter min mening.

Først og fremmest kan man med fordel vægte sine teams således at man har halvdelen af teamet siddende nearshore. Det giver en række fordele i at forretningen har en lettere tilgang til udviklingen og "døren altid er åben". Sidder den anden halvdel af teamet så i fx Ukraine eller Indien, så bliver de automatisk trukket tættere på af deres nearshore kolleger. Dernæst kommer det faktum, at man skaber et velfungerende team ved at lade roller i teamet fordeles ligeligt over offshore og nearshore medarbejderne. Dvs. at man IKKE bør placere fx sine seniorudviklere nearshore og sine junior/mid udviklere offshore. Magtfordelingen i teamet bliver skæv og man opnår ikke tillid inde i teamet. Og det leder så automatisk frem til den vigtigste (stadig set fra min stol) faktor i outsourcing (og i denne forbindelse også ifht. datasikkerhed) - TILLID! Hav tillid til dine medarbejdere uanset hvilken fysisk lokation de sidder på. Udvis tilliden og de gør det samme. Så snart du inddrager dem i din forretning så tager de ansvar og bliver dedikeret. Det sparer dig for søvnløse nætter omkring datasikkerhed/læk og det sparer penge på kontoen ifht. "retention/dismissal". Hold dine møder på et fælles sprog og inviter altid alle medarbejdere med til alle møder (der har relevans) og sørg for at tænke på dem som "mine kolleger". Send fx ikke en liste med opgaver og forvent dem løs indenfor X tid - sørg for at de er med til at definere opgaverne og give input.

Kultur og mentalitet til forskel... Måske... Men det er mennesker og det er nogen du har ansat (eller udbetaler løn). Udvis tillid og ansvar - du får det samme retur...! Nøgleordet er "tillid".

Carsten Hansen Blogger

Ja ja engang imellem bliver man ramt af det man beskylder andre for. Min kommentar som faldt Troels for brystet var ment som en perfid kommentar til en af de tidligere kommentarer...

@Morten Grantzay: jeg er helt enig i det indlæg. Vi arbejder præcis ud fra de principper som du beskriver i dit indlæg,

@Martin Jünkow: Nej jeg pålægger ikke mine folk disse lænker, men hvis jeg i mine indlæg skriver hvordan vi gør, kommer der straks 20 flaming kommentarer omkring ar Version lægger plads til kommercielle indlæg. Jeg prøver at beskrive nogle problemstillinger, og nogle af de ting man jan gøre, ikek at jeg syntes alle er gode. Hvis du læser hele det indlæg du kommenterede, så mener jeg at mange af de ting man kan gøre har andre negative konsekvenser...

Peter Johan Bruun

@Martin Jünkow: Nej jeg pålægger ikke mine folk disse lænker

Fra artiklen: "Undgå browseradgang og programmer som Skype, MSN m.v. til udviklerne, når de sidder på din opgave. På den måde kan de ikke kopiere data fra dit udviklingsprojekt. Hvis du vil være helt sikker på, at de ikke kan hente data ud, kan du kan desuden de-aktivere mulighed for ”copy”, ”print screen” og ”print”."

..... hmmmm .... does not compute.

Et andet spørgsmål der trænger sig på i den sammenhæng: hvordan kan man som IT udvikler overhovedet udvikle/programmere i sådant et miljø ? Hvilke værktøjer anvender Jeres udviklere hos consencia ??

Log ind eller opret en konto for at skrive kommentarer