Die eDF Group und Nexus Lifecycle

Unterstützung der Kunden bei der Verwaltung von Energieressourcen und -verbrauch

Électricité de France gehört zu den größten Stromerzeugern der Welt. Mit 37,6 Millionen Kundenkonten weltweit, 154.845 Mitarbeitern und einem Jahresumsatz von 71,2 Milliarden Euro setzt EDF bei den Produkt- und Serviceangeboten auf Innovation, um seinen Privatkunden bei der Verwaltung ihres Stromverbrauchs zu helfen. Im Rahmen des Projekts CAP 2030 sollen bis 2030 mithilfe von individuellen und dezentralisierten Energielösungen bedeutend mehr erneuerbare Energien erzeugt werden.

Ziel des Entwicklungsteams der eDF Group ist es, einen skalierbaren, wiederholbaren Build-Prozess zu standardisieren und zu vereinfachen. Dieses Framework wird verwendet, um den Kunden neue personalisierte Verwaltungsprodukte und -services anzubieten. Die eDF Group nutzt Nexus Repository und Nexus Lifecycle als Teil des DevOps-Tool-Sets, um diese neuen Technologien zu entwickeln.

„Der größte Vorteil der Verwendung von Nexus Lifecycle liegt darin, dass wir unserem Projektteam jetzt berichten können, welche spezifischen Bibliotheken wir innerhalb unserer Anwendungen verwendet haben. Dadurch erhalten wir sofortigen Einblick in etwaige Sicherheitsprobleme.“

– Olivier Routier, Head of CI DevOps Engineering

Die Herausforderung: Überwachung und Bewertung der Haftung für Open-Source-Lizenzen in großem Maßstab

Bevor Nexus für die Verwaltung, das Tracking und Monitoring von Paket-Downloads verwendet wurde, gab es keine skalierbare Methode, um zu beurteilen, wer möglicherweise in Zusammenhang mit den Lizenzen für die unternehmensübergreifend verwendeten Open-Source-Komponenten haften muss.

Das Engineering Management Team befasste sich mit den Lizenzfragen und -problemen, die durch die Nutzung von Open-Source-Komponenten auftraten. Am Anfang versuchte man es mit manuellen Berichten und Meldungen über die Verwendung neuer Komponenten an das Team für Informationssicherheit, das dann die möglichen Risiken beurteilen sollte. Dieser Prozess war aber nicht skalierbar und eignete sich nicht, um mit dem großen Volumen an verwendeten Open-Source-Komponenten in der Entwicklung Schritt zu halten. Da es lange dauerte, bis manuelle Genehmigungen erteilt wurden, verzögerten sich neue Software-Releases. In manchen Fällen hatte das zur Folge, dass Anwendungen, die eigentlich hätten analysiert werden müssen, nicht an die Teams für Informationssicherheit weitergegeben wurden.

Sicherheitsteam von EDF setzt auf Sonatype Nexus

„Wir haben über 40 Anwendungen in der Produktion“, erklärt Olivier Routier, Leiter für CI im DevOps Engineering Team. Olivier ist für die Integration des Nexus Repository Managers in die DevOps-Pipeline verantwortlich. Nexus wird verwendet, um die Projekt-Builds zu vereinfachen und die Bibliotheken innerhalb der SI von EDF abzubilden. „Bevor wir auf Nexus gestoßen sind, hatten wir nahezu keine Informationen darüber, welche Bibliotheken innerhalb eines Projekts zum Einsatz kamen.“

Es gab zwar nachträgliche manuelle Sicherheitsverfahren, die später im Prozess im Rahmen von Sessions für den Austausch zwischen Sicherheits- und Entwicklungsteams durchgeführt wurden, aber man hatte nach der Bereitstellung nur wenig Einblick in die Anwendungsprojekte. „Mit manuellen Prozessen lassen sich Open-Source- und Drittanbieter-Bibliotheken in einer so großen Anzahl von Anwendungen nicht tracken und überwachen“, erklärt Olivier.

Die größte Herausforderung für das Entwicklungsteam war es, die Nutzung von Open-Source-Komponenten innerhalb der Anwendungen des Unternehmens transparent zu machen.

Die Lösung: Integration von Nexus Lifecycle in eine durchgängige DevOps-Pipeline

Das Entwicklungsteam der eDF Group war dafür verantwortlich, Nexus Lifecycle in den Build-Prozess zu integrieren. Das Team verwendet jetzt Nexus Lifecycle zusammen mit Eclipse, SonarQube und Jenkins. Außerdem wurden Ansible und OpenShift integriert, um eine durchgängige DevOps-Pipeline zu schaffen. Die eDF Group begann zunächst, Nexus für eine kleine Benutzergruppe einzuführen, nachdem man Sonatype auf mehreren Branchenkonferenzen kennengelernt und eingeladen hatte, entsprechende Möglichkeiten aufzuzeigen. Eine wichtige Funktion, die eDFs Entscheidung für Nexus Lifecycle maßgeblich prägte, war die Integration mit Jenkins.

Der erste Schritt, um die Genehmigung zur Nutzung von Nexus Lifecycle zu erhalten, war die Zustimmung des Sicherheitsteams. „Wenn man in seinem Unternehmen einen DevOps-Prozess entwickeln möchte, muss man das Sicherheitsteam einbeziehen. Mit DevOps gibt es viele Änderungen in unseren Prozessen, was eine Folge von mehr Automatisierung ist“, so Olivier. „Eine gute Beziehung zum Sicherheitsteam ist dabei ein wichtiges Thema. “ 

Er arbeitete eng mit dem Sicherheitsteam zusammen, um die Vorteile der Berichte innerhalb von Nexus Lifecycle, die einfache Erstellung und Genauigkeit der Ergebnisse zu demonstrieren. „Mit Lifecycle erhält man Einblick in die transitiven Abhängigkeiten. Als wir diese Lösung zum ersten Mal verwendeten, war das wie ein riesiges Geschenk“, erklärt Olivier sichtlich zufrieden. „Nicht nur das Tracking und Monitoring sind automatisiert, sondern man kann den Prozess auch manuell starten und spezifische Pakete nach Bedarf analysieren.“

Automatisierung von Open Source Governance in großem Maßstab

Olivier hat anhand der von Lifecycle ausgegebenen Informationen Tests durchgeführt, um die Richtigkeit der Daten zu überprüfen. Als Erstes ließ das Team seine WebLogic-Server-Binärdateien durch Lifecycle laufen, um die Top-Level-Informationen aus einem früheren Sicherheitsbericht mit Empfehlungen für Korrekturen abzugleichen. Die Daten aus den Berichten von Lifecycle waren den Ergebnissen aus den früheren Prozessen weit überlegen.

Über das Dashboard-Reporting von Nexus Lifecycle konnten die Entwickler und Projektteams sehen, welche Bibliotheken für die Entwicklung der Anwendungen eingesetzt wurden. Die hohe Qualität der vorliegenden Daten aus den Berichten führte dazu, dass das Sicherheitsteam beschloss, das eigene Budget zur Nutzung der Lösung in anderen Projekten aufzuwenden.

Das Ergebnis: Sichere Versionen von Open-Source-Komponenten können schnell und souverän gewählt werden

Da die Informationen aus Nexus Lifecycle so zuverlässig sind, ist das Projektteam bei eDF in der Lage, schnell eine sichere Version einer Komponente auszuwählen, denn es kann darauf vertrauen, immer über bekannte Sicherheits- und Lizenzprobleme Bescheid zu wissen. Die Nutzung dieser Komponenten lässt sich dann bereits früh überall im Entwicklungs- und Deployment-Lifecycle verfolgen und überwachen.

„Der größte Vorteil der Verwendung von Lifecycle liegt darin, unserem Projektteam rückmelden zu können, welche spezifischen Bibliotheken wir innerhalb unserer Anwendungen verwendet haben und welche Sicherheitsprobleme oder Lizenzrisiken mit diesen Bibliotheken einhergehen. Wir erhalten sofort Einblick in jede Komponente, die nicht unseren Richtlinien entspricht. Deshalb fiel unsere Wahl auf Lifecycle. Wir verfolgen und überwachen Bibliotheken automatisch als Teil des Entwicklungsprozesses. Jetzt sind wir gerade dabei, Nexus auch außerhalb unserer DevOps-Teams und -Projekte einzuführen.“

Auf die Frage, ob er Nexus Lifecycle weiterempfehlen würde, spricht Oliviers Antwort für sich: „Ja. Das Produkt ist großartig. Ich kann das sagen, weil ich es verwende.“

Tracking und Überwachung von Bibliotheken während der Entwicklung

VERTRIEB KONTAKTIEREN

Bereit, Sonatype auszuprobieren?

Schützen und automatisieren Sie Ihre Software-Supply-Chain.