Document toolboxDocument toolbox

5.6.3. De details over code review

Wat is het?

Met code review bedoelen we alle manuele/geautomatiseerde controles die je kunt doen om de veiligheid van de code van een toepassing te controleren. Afhankelijk van de fase waarin je ontwikkeling zich bevindt, is een ander soort review nodig. Deze reviews gebeuren in de ontwikkel-, test- of acceptatieomgeving.

Je hebt statische en dynamische code reviews:

  • Statische reviews gebeuren op niet-gecompileerde broncode – in essentie dus code zonder context.

  • Dynamische reviews gebeuren op code die in een context geplaatst is, bijvoorbeeld in een test- of acceptatieomgeving waar je kunt zien hoe de code zich in een proces gedraagt.

Behalve deze twee testen, kun je met andere testen tijdens het ontwikkelproces (unit testing of acceptatietesting bijvoorbeeld) ook de veiligheid in een toepassing testen. Dit kun je manueel in een testscenario of automatisch doen. Het objectief is risico’s te identificeren en te analyseren welke risico’s je moet/kunt mitigeren. 

In welke omgeving doe je code review?

  • Statische code reviews doe je in de ontwikkelomgeving. Dit is een controle op kwetsbaarheden in een abstracte context

  • Dynamische code reviews doe je in de test- en/of acceptatieomgeving. Dit is een controle op kwetsbaarheden in een Hierbij is het belangrijk veiligheid en functionaliteit aan elkaar te koppelen. Het moet niet enkel veilig zijn, het moet ook werken.

Wat?

Welke tools?

  • De Vlaamse overheid legt geen specifieke tools op. Het team Informatieveiligheid kan wel advies
    verlenen

  • Dit is een dienst die je kunt afnemen binnen het raamcontract

Scope?

  • Alle online toepassingen

  • Alle websites

  • Alle intern ontsloten toepassingen (enkel toegankelijk voor geauthenticeerde gebruikers op het Vlaamse overheid-netwerk)

Wat met externe code of toepassingen?

  • Ingekochte toepassingen

    • Hierbij is het belangrijk om na te gaan dat de leverancier deze praktijk toepast. Dit kun je contractueel indekken en deel laten uitmaken van de risicoanalyse van het contracteringsproces. Contacteer hiervoor de Aankoopcentrale

    • Deze check doe je vóór je de code of de toepassing inkoopt of installeert. Hier geldt ook het principe dat hoe vroeger je je ervan vergewist dat het oké is, hoe makkelijker het verloop van het proces

  • Open source code

    • Ook bij open source code en toepassingen is het belangrijk om deze controles uit te voeren

    • Zeker bij open source is dit een gesprek dat je moet voeren met de community die instaat voor het onderhouden van de code

    • Deze check doe je vóór je de code of toepassing uitrolt of installeert

Ook voor ingekochte code, of open source code gebeurt dit soort oefening in de ontwikkel-, test- of acceptatieomgeving.