heygrc
Antwoord

Hoe voeg ik een externe afhankelijkheid veilig toe?

het heygrc team

Pin de versie, verifieer wat je downloadt (met een lockfile en integriteitscontrole), vermijd het uitvoeren van externe installatiescripts en geef de voorkeur aan je eigen gecontroleerde registry of mirror. NIS 2 (Art. 21(2)(d)) beschouwt je afhankelijkheden als onderdeel van supply-chain security, en de controles hierop staan in je manifest en build.

  1. Pin en vergrendel

    Voeg de afhankelijkheid toe aan een specifieke versie en commit de lockfile, zodat het exacte artefact reproduceerbaar is en een toekomstige, ongeverifieerde versie niet stilletjes kan worden meegenomen.

  2. Verifieer, voer geen script uit via een pipe naar de shell

    Installeer vanuit je package registry met integriteitscontrole ingeschakeld, in plaats van een extern script op te halen en uit te voeren tijdens de build. Een gepipe installatie voert uit wat er vandaag op die URL staat, ongeverifieerd, met de build-rechten.

  3. Geef de voorkeur aan de gecontroleerde bron

    Download vanuit je interne mirror of een toegestane registry, waar de controles op pakketten gelden, in plaats van direct naar upstream te gaan.

Dockerfile+1 -1
- RUN curl -fsSL https://get.example-tool.dev/install.sh | bash+ RUN pip install example-tool==2.4.1COPY . /app
heygrcNIS 2 Art. 21(2)(d)

Een vastgepinde installatie vanuit je registry vervangt het uitvoeren van een ongeverifieerd extern script tijdens de build. Commit ook de lockfile, zodat transitieve afhankelijkheden vastgepind en gecontroleerd op integriteit zijn, niet alleen deze top-level afhankelijkheid.