-

Hoe je een effectieve DevSecOps-cultuur ontwikkelt en onderhoudt

DevOps en daarna, met een nadruk op veiligheid, ook DevSecOps is een manier van werken waarbij samenwerking en het doorbreken van silo’s centraal staan. Hoewel je het als project kunt opzetten gaat het uiteindelijk om een brede cultuurverandering. Dit zijn de centrale concepten en aandachtsgebieden.

De grondgedachte van DevOps was het doorbreken van de silo’s tussen ontwikkelteams en IT-beheer, om zo de snelheid van oplevering en de productkwaliteit te verbeteren. Met DevSecOps is er een vergelijkbare wens om te helpen silo’s te doorbreken, en vertragingen en discussies te verminderen, maar deze keer met een extra focus op de veiligheid van het product.

De DevSecOps-cultuur

Door teams autonoom over hun ontwikkeling, beheer en security te laten beslissen, stimuleer je een gevoel van verantwoordelijkheid. Een ondersteunende rol is daarbij weggelegd voor het management: dat faciliteert verdere samenwerking. In een succesvolle DevSecOps-cultuur draagt iedereen namelijk bij aan het behalen van de verschillende doelstellingen. Ieders expertise op het gebied van ontwikkeling, beheer en security wordt gebruikt om de anderen te ondersteunen.

Het is natuurlijk logisch dat zo’n verandering naar een Dev(Sec)Ops-cultuur niet van de ene op de andere dag gerealiseerd is, en de looptijd van zo’n proces verschilt per bedrijf. De organisatiecultuur wordt grotendeels bepaald door de CEO en zal bestaan uit een bepaalde mate van controle om een veilige omgeving te creëren, het meten van KPI’s te verbeteren en autonomie te bevorderen. Het continu verbeteren van deze drie punten heeft een positief effect op de verandering naar een DevSecOps-cultuur.

Bovendien is het belangrijk om mee te nemen dat verschillende bedrijfsculturen verschillende samenwerkingsmodellen aantrekken. Sommigen zien Dev(Sec)Ops als een afzonderlijk projectteam dat tijdelijk wordt samengebracht of dat als ‘servicelaag’ wordt toegevoegd aan bestaande afdelingen. Anderen zien het juist als teams die op continue basis nauw samenwerken. Waarschijnlijk zijn modellen die meer samenwerking en autonomie aanmoedigen effectiever, maar de aard van de specifieke bedrijfscultuur bepaalt wat in de praktijk succesvol werkt.

Een groeiend vertrouwen tussen the security– en het ontwikkelteam is belangrijk voor de ontwikkeling van het bedrijf. Dit vertrouwen is gebaseerd op vier even belangrijke elementen: competentie, betrouwbaarheid, oprechtheid en betrokkenheid. Je ziet een collega misschien als competent om een security scan uit te voeren, maar als hij of zij niet reageert op je vragen (betrouwbaarheid) of zich geen zorgen maakt over de impact (betrokkenheid), dan vermindert dat het vertrouwen.

De vier aandachtsgebieden van Dev(Sec)Ops

Naast de organisatorische en culturele overwegingen, heeft Dev(Sec)Ops doorgaans vier aandachtsgebieden waarin de verantwoordelijkheden en overwegingen van de ontwikkelteams veel verder gaan dan hun traditionele taak.

  1. De stack – De technologie die een Dev(Sec)Ops-pipeline ondersteunt moet geschikt zijn voor de veranderingen die je wilt doorvoeren om te slagen. Van oudsher draaide de security van applicaties om code, maar naarmate een organisatie de verandering doormaakt naar Dev(Sec)Ops kan de security zich verder uitbreiden naar code-afhankelijkheden, infrastructuur en externe diensten. De security kan ook ter sprake komen bij het gebruik van gedeelde veiligheidscomponenten, zoals, wat code betreft, het gebruik van gebruikersidentiteiten en belangrijke management-frameworks, en dus zelfs licenties en veiligheid van databeheer.
  2. De delivery pipeline – Het technische proces dat ontwikkelings-, security– en operationele teams ondersteunt in de levering op een consistente en uniforme manier. Teams kijken bij het veilig leveren van de applicaties ook naar de applicatieomgeving, testmethodes, implementatie en hoe patches worden geïmplementeerd.
    Voor Dev(Sec)Ops zijn technologieën nodig waarmee medewerkers deze processen kunnen uitvoeren en automatiseren. En overbodige tools zullen moeten worden geëlimineerd. Deze manier wordt vaak onderschat, maar is uiterst effectief om de levering van software te optimaliseren. Levering in een Dev(Sec)Ops-cultuur moet de samenwerking verbeteren en zorgen voor veiligere ontwikkelingsprocessen.
  3. Governance – Het is essentieel voor Dev(Sec)Ops-teams om verbeteringen in het security-proces samen te bespreken. Dev(Sec)Ops-processen doorbreken namelijk de traditionele barrières van autoritair veiligheidsbeleid en workflows. Gating-modellen moeten worden herzien en waar mogelijk worden verwijderd bij het overschakelen naar Dev(Sec)Ops, om zo lange feedback loops, een vertraagde levering en silodenken te vermijden.
    Een belangrijk kenmerk van governance in de Dev(Sec)Ops-cultuur is het opzetten van een uitgebreid meetprogramma. Het laten groeien van de cultuur en continu verbeteringen laten zien, zijn cruciaal. Grenzen van toegelaten kwetsbaarheden vastleggen kan dit proces in gang zetten, maar het is van belang om rekening te houden met de samenwerking die deel uitmaakt van de cultuur.
  4. Empowerment – Uiteindelijk willen ontwikkelaars die werken in een Dev(Sec)Ops-cultuur hun eigen beslissingen nemen, omdat ze het eigenaarschap willen hebben over de applicatie-security. Het reorganiseren van DevOps en security-teams om efficiënte samenwerking te realiseren, zorgt ervoor dat security wordt meegenomen vanaf het begin en niet meer wordt gezien als een belemmering die later naar voren komt. Het gefaseerd opbouwen van een DevSecOps-cultuur vraag echter wel om tijd en vertrouwen.
Fases om een DevSecOps-team te versterken

Start met het voeren van gesprekken om issues aan te kaarten, ideeën voor verbeteringen op te doen en problemen op te lossen door samen te werken. De tweede fase bestaat uit het bouwen van een leercultuur rond security. Domeinexperts zullen altijd nodig zijn, maar om de samenwerking naar een hoger niveau te tillen, moeten alle teamleden over elkaars expertisegebieden willen leren. De laatste fase bestaat uit het realiseren van verantwoordelijkheidsgevoel en eigenaarschap onder ontwikkelaars op het gebied van security.

Dit zijn vergevorderde stadia en het kan lang duren voor deze fases zijn doorlopen. Aangezien een cultuurverandering, zoals de overgang naar Dev(Sec)Ops, een langetermijninvestering is, is het belangrijk dat je altijd de waarde kan aantonen van wat je aan het doen bent. Een Dev(Sec)Ops-reis moet niet gericht zijn op een eindresultaat, maar eerder op continue verbetering en het ontstaan van deze cultuur binnen de organisatie.

Elke stap die wordt gezet in het begrip van en de samenwerking tussen stack, levering, governance en empowerment is een positieve stap voorwaarts in het realiseren van Dev(Sec)Ops met als gevolg veiligere applicaties.

Over de auteur: Patrick Debois is Labs researcher bij Snyk.

Op de hoogte blijven van het laatste nieuws binnen je vakgebied? Volg Emerce dan ook op social: LinkedInTwitter en Facebook.

Deel dit bericht

Plaats een reactie

Uw e-mailadres wordt niet op de site getoond