Die Snyk CLI mit einem erweiterbaren Ansatz weiterentwickeln
Steve Winton
7. Februar 2023
0 Min. LesezeitTausende Entwicklerinnen und Entwickler verwenden täglich die Snyk CLI in ihrem Entwicklungsworkflow, um Sicherheitsprobleme in ihrem Code so früh wie möglich zu erkennen und zu beheben. Was wäre, wenn diese Entwicklerinnen und Entwickler sowie andere Sicherheitsexpertinnen und -experten die Vorteile dieses entwicklungsorientierten Ansatzes nutzen und über einen erweiterbaren Ansatz auch ganz neue Sicherheitsanalysen, Filter und Workflows einsetzen könnten? Stellen Sie sich vor, Sie könnten Ergebnisse mithilfe individueller Geschäftslogik programmatisch filtern, ignorieren und eskalieren oder eine benutzerdefinierte Sicherheitsanalyse in einen erweiterbaren snyk test-Befehl integrieren und deren Ergebnisse während des gesamten Softwareentwicklungslebenszyklus sichtbar machen.
Genau in diese Richtung entwickeln wir die Snyk CLI. Heute geben wir mit einigen wichtigen Änderungen den ersten Schritt hin zu dieser Vision bekannt.
Ein überzeugendes CLI-Erlebnis mit einem verteilten Modell schaffen
Seit ihrem allerersten Open-Source-Commit im Jahr 2015 hat die Snyk CLI ein unglaubliches Wachstum und eine beeindruckende Verbreitung erlebt. Immer mehr Entwicklerinnen und Entwickler verlassen sich auf sie, um ihre Anwendungen zu schützen. Als stetig wachsender Funktionsumfang, der zahlreiche entwicklungsorientierte Sicherheitsworkflows unterstützt, deckt sie alle Bereiche moderner Anwendungen ab – vom Code bis zur Cloud.
Um unsere Vision der Erweiterbarkeit umzusetzen und die Snyk CLI weiter zu skalieren und auszubauen, damit sie unseren Nutzerinnen und Nutzern Mehrwert bietet und zugleich eine klare, konsistente Befehlszeilenerfahrung gewährleistet, verabschieden wir uns von einer zentralisierten, „monolithischen“ CLI-Anwendung und wechseln zu einem verteilten Modell. Dieses neue Modell setzt standardmäßig auf Erweiterbarkeit, die durch stabile Schnittstellen geregelt wird.
Wir ändern die Architektur, Entwicklung und Veröffentlichung der Snyk CLI: Die Befehle auf oberster Ebene unter snyk dienen künftig als gemeinsamer Einstiegspunkt für mehrere Erweiterungen. Eine davon ist die bisherige CLI selbst.
Das ist eine Menge, die man sich erst einmal vorstellen muss! Die folgende Grafik veranschaulicht den Ansatz:

Dieser Ansatz bietet zahlreiche Vorteile: Wir gewährleisten die Abwärtskompatibilität und können gleichzeitig in dedizierten Namespaces Innovationen vorantreiben und neue Funktionen einführen. Zugleich können wir die bisherige monolithische CLI-Anwendung sicher und schrittweise in ihre einzelnen (erweiterbaren) Bestandteile zerlegen.
Wer die jüngsten Entwicklungen rund um die CLI aufmerksam verfolgt hat, ist vielleicht schon auf dieses Modell gestoßen: Wir setzen es bereits mit dem derzeit als Beta verfügbaren Befehl snyk sbom um, der mit unserem Erweiterbarkeits-Framework entwickelt wurde.
Bleiben Sie dran – weitere Neuigkeiten folgen
Im Laufe der Zeit werden weitere dieser „First-Class-Erweiterungen“ eingeführt und als zusammenhängendes Ganzes im Namespace der snyk-CLI auf oberster Ebene gebündelt. Unser Ziel ist ein offenes Ökosystem nützlicher Erweiterungen, das Anpassungen und Innovationen rund um die Snyk CLI ermöglicht. Ein Beispiel: Ein Sicherheitstool eines Drittanbieters könnte die von snyk test durchgeführten Analysen erweitern und so zusätzliche Sicherheitsinformationen in die Tools und Workflows einbringen, denen Entwicklerinnen und Entwickler täglich vertrauen und die sie nutzen.
Im Moment ändert sich jedoch aus externer Sicht nichts an der Verwendung der CLI – auch wenn sich unter der Haube einiges unterscheidet, da der Einstiegspunkt und die Erweiterungen als eigenständige Binärdateien bereitgestellt werden. Wir veröffentlichen weiterhin Releases über GitHub und npm und hosten jedes Release auf unserem CDN static.snyk.io. Sollten wir künftig inkompatible Änderungen an der Snyk CLI vornehmen, kündigen wir diese ausdrücklich an und kennzeichnen sie entsprechend (beispielsweise gemäß Semantic Versioning).
Wir hoffen, dass Sie die Snyk CLI auch weiterhin gerne für die Absicherung Ihrer Entwicklungsworkflows nutzen. Erfahren Sie mehr über die Snyk CLI in unserer Dokumentation. Bei Fragen oder wenn Sie Unterstützung benötigen, kontaktieren Sie uns.
Starten Sie mit Capture the Flag
Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Herausforderungen lösen.



