DevSecOps

#CONCEPT

#CODE

#CLOUD

#CARE

Zusammenfassung

Die InterFace AG unterstützte den Kunden bei der Planung, Implementierung und Bereitstellung einer automatisierten Entwicklungsumgebung, die es ermöglichte, den gesamten Dev- und Ops-Lifecycle gemeinsam zu integrieren und somit effizienter zu gestalten. Hierdurch wurde eine höhere Ergebnisqualität erzielt. Geeignete Technologien und Integrationsmöglichkeiten garantierten eine funktionierende CI/CD-Pipeline.

Das Besondere: Die aus dem DevOps-Umfeld bekannten Automatisierungstechnologien wurden beim hier verwendeten DevSecOps-Ansatz um sogenannte „Security by Design“-Prinzipien erweitert. Relevante Sicherheitsaspekte der Anwendung wurden damit von Beginn an berücksichtigt und waren integraler Bestandteil des gesamten Entwicklungsprozesses.

Konkret bedeutete das: Bereits während der Entwicklungsphase des Codes erfolgte eine automatisierte Prüfung möglicher Sicherheitslücken. Zudem wurden in jeder weiteren Phase der Softwareentwicklung auch Sicherheitstests und Sicherheitsbewertungen durchgeführt. Die endgültige Version ging erst online, sobald die Pre-Release-Anwendung fehlerfrei und die Qualität gegeben waren.

Wir schaffen Freiräume durch IT-Lösungen

Diese Freiräume wurden geschaffen:

  • Wettbewerbsvorteil im Digitalisierungsrennen:
    durchdachter und zukunftsfähiger SWE-Prozess, höhere Wertschöpfungsmöglichkeiten
  • Ergebnisqualität:
    geringere Fehleranfälligkeit durch weniger manuelle Prozessschritte, Berücksichtigung von Sicherheitsaspekten von Beginn an („by Design“)
  • Zeit- und Kostenersparnis:
    Nutzung von Automatisierungspotenzialen, Entfall von mühsamen manuellen Schritten
  • Erhöhte Sicherheit:
    frühzeitige Identifizierung von Schwachstellen im Entwicklungsprozess und proaktive Behebung vor dem Release

Hintergrund

Der Kunde stand vor der großen Herausforderung, seinen Softwareentwicklungsprozess zukunftssicher aufzustellen. Andernfalls drohten Wettbewerbsnachteile und Personalabgänge, da die Technologien und die Prozesse der SWE-Practice nicht mehr dem aktuellen Stand entsprachen.

Aufgrund fehlender Ressourcen wurde die InterFace AG beauftragt, eine DevSecOps-Entwicklungspipeline zu installieren.

Herausforderung

Der Markt steht vor erheblichen Digitalisierungsherausforderungen. Software – und die Fähigkeit zur Entwicklung derselben – hat sich in der jüngeren Vergangenheit zu einem wesentlichen Wachstumstreiber und einem integralen Faktor in der Wettbewerbsfähigkeit entwickelt. Das Beherrschen dieser Disziplin wird – branchenübergreifend – über den Erfolg in der nahen und mittleren Zukunft entscheiden. Als vorrangig sind hierbei die Geschwindigkeit in der Umsetzung des digitalen Backlogs sowie die Ergebnisqualität zu betrachten.

Die zur Digitalisierung notwendigen Anwendungen (z.B. für die Vernetzung von Maschinen) müssen, je nach Geschäftsmodell, von Dienstleistern oder in Eigenregie entwickelt werden. Wer selbst entwickeln möchte (oder muss), braucht eine Infrastruktur, die modernen Standards entspricht und existierende Automatisierungspotenziale in der Softwareentwicklung zum eigenen Vorteil nutzt.

Weiterhin spielen Sicherheitsaspekte eine überragende Rolle. Dies sowohl im Dev-Prozess selbst als auch beim eigentlichen Ergebnis, also der produktiv eingesetzten Software. Das Stichwort an dieser Stelle lautet: DevSecOps.

Ziel des Projekts war die Betreuung der gesamten Pipeline „As a Service“ – entlang der Kundenanforderungen:

  • Automatisierte Prüfung der Applikation auf bekannte Schwachstellen
  • Automatisierte Prüfung der verwendeten Docker Container auf bekannte Schwachstellen
  • Automatisierte Prüfung auf neue Versionen der verwendeten Bibliotheken
  • Verwendung von statischer Code-Analyse zur Überprüfung der Anwendung auf Schwachstellen
  • Verwendung von Linting zur Forcierung einheitlicher Coding-Standards
  • Automatisierte Durchführung von Unit-, Komponenten- und Integrationstests im Rahmen der CI-Pipeline
  • Verwendung von Quality-Gates zur Sicherstellung der Ergebnisqualität
  • Automatisierter Build und Deployment der Applikation für produktive und nicht produktive Umgebungen
  • Standardisierte Deployments von der lokalen Entwicklungsumgebung, über nicht produktive Umgebungen bis hin zur Produktivumgebung durch Verwendung cloud-nativer Container-Technologien wie Kubernetes

Lösung

Ein vorwiegend manueller oder teilweise manuell durchgeführter SWE-Prozess mit der klassischen Aufteilung zwischen Dev und Ops ist wenig effizient, ressourcenintensiv und fehleranfällig. Daher schuf die InterFace AG ein DevSecOps-Framework, mit dem die Integration zwischen Dev und Ops größtenteils automatisiert abläuft und damit das volle Potenzial des Softwareentwicklungs-Lifecycles abruft.

Neben den bekannten Vorteilen des DevOps-Ansatzes, wie etwa Continuous Integration und Continuous Delivery (CI/CD-Pipeline), die vor allem für automatisierte Build-Prozesse und automatische Bereitstellung/Überführung des Codes bis in die Produktionsumgebung verantwortlich sind, lautete das Zauberwort im vorliegenden Projekt „Security by Design“.

Bereits in der CONCEPT-Phase des Dev-Prozesses wurden die notwendigen Security-Standards berücksichtigt, um eine Software zu bauen, die den generellen und spezifischen Sicherheitsanforderungen entspricht. Neben verschiedenen Testautomatisierungen in den unterschiedlichen Staging-Stufen (Quality-Gates) prüft das System außerdem die Aktualität der verwendeten Softwarelibraries und Komponenten und macht bei Bedarf auf Updates und notwendige Code-Anpassungen aufmerksam. Diese Sicherheitsfeatures wurden damit von Anfang an in die CI/CD-Pipeline integriert und wurden somit entlang des gesamten Entwicklungsprozesses berücksichtigt. Nachträgliche zeit- und kostenintensive Anpassungen der Softwaresicherheit entfielen.

Leistungen der Interface AG
#CONCEPT
  • Requirements: Erarbeitung des Anforderungskatalogs zum DevSecOps-Framework – mithilfe moderner Techniken auf Basis vom Domain Driven Design
  • IST-Analyse: Durchführung von Workshops mit Stakeholdern und späteren Anwendern – Verständnis für Prozesse u.a. per „Domain Storytelling“-Workshop
  • SOLL-Analyse: Skizzierung des Zielszenarios – Abbildung des DevSecOps-Prozesses mit zukunftssicheren Technologien
#CODE
  • Entwicklung der Lösung: iterative Entwicklung nach SCRUM-Ansätzen in enger Abstimmung mit den Stakeholdern
  • Ressourcen: Einsatz eines crossfunktionalen Teams zur Abbildung des gesamten Spektrums des DevSecOps-Workflows (Konzeption, Entwicklung, Testing, Deployment, Betrieb)
#CLOUD
  • Zielinfrastruktur: Entwicklung des DevSecOps-Workflows auf einer modernen Public Cloud
  • Durchgängigkeit: Abbau der Barriere zwischen Entwicklungsteam und Operations (Implementieren und Betreiben der Software auf der Zielinfrastruktur), automatischer Einbau und Lauffähigkeit des entwickelten und getesteten Codes via CI/CD-Pipeline
#CARE
  • Sicherheitstest und Sicherheitsbewertungen: automatische Prüfung der Sicherheitslücken in jeder Softwareentwicklungsphase, Gewährleistung der kontinuierlichen Sicherheit im gesamten Entwicklungsprozess

Die Qualität der Software stieg. Alle oben genannten Punkte führten in Kombination dazu, dass die Anwendung eine höhere Güte erreichte. Allein der Fokus des Dev-Teams auf das pure Schreiben von Code führte zu einem besseren Standard.

Konkreter Kundennutzen

  • Aufbrechen der Barriere Dev und Ops:
    einheitlicher und durchgängiger Prozess
  • Automatisierung manueller Prozessschritte im Dev-Prozess:
    zukunftsfähige Entwicklungsumgebung, Unterstützung der Wertschöpfung, Transformation zu einem wertschöpfenden Kernprozess
  • Effizienzsteigerung und Skalierbarkeit:
    Gewährleistung eines reibungslosen Ablaufs durch Automatisierung, signifikanter Anstieg der Produktivität des agilen Teams
  • Qualitätssteigerung:
    schnellere Qualitätskontrolle neuer Implementierungen durch automatisiertes Testing und Linting sowie Prüfung in den Quality-Gates

Verwendete Technologien und Frameworks

  • Git
  • GitLab
  • GitLab CI
  • Kubernetes
  • AWS
  • Tekton
  • SonarQube
  • Grafana
  • Renovate
  • Grype
  • OWASP Dependency Check
  • Docker
  • Helm

Und wie können wir Ihnen behilflich sein?

Starten Sie jetzt mit der Digitalisierung Ihres Unternehmens und erfahren Sie mehr in einem ersten unverbindichen Gespräch mit unseren Experten!