Kontinuierliche Compliance in Ihrem Entwicklungszyklus für Anwendungssoftware

Wenn Sie die Vorteile von DevSecOps nutzen, um die Integration von Sicherheitsaspekten in jeder Phase des Lebenszyklus Ihrer Unternehmensanwendungen zu automatisieren, können Sie Sicherheitsprobleme bereits beim Auftreten beheben, was einfacher, schneller und kostengünstiger ist. Durch den Einsatz der DevSecOps Application Lifecycle Management Deployment-Architektur können Sie die beiden Hauptvorteile von DevSecOps, nutzen, nämlich Geschwindigkeit und Sicherheit.

Während des Entwicklungszyklus wird der Code überprüft, gescannt und auf Sicherheitsprobleme getestet. Diese integrierte Sicherheit ermöglicht es Ihrem Team, Probleme frühzeitig abzufangen und doppelte Prüfungen und unnötige Neuerstellungen zu reduzieren, was zu sichererem Code führt, der schneller bereitgestellt wird. Durch die Integration von Schwachstellen-Scans und Patches in den Entwicklungs- und Release-Zyklus ( DevSecOps ) wird die Fähigkeit, allgemeine Schwachstellen und Gefährdungen (CVE) zu identifizieren und zu patchen, verbessert. Dies begrenzt das Fenster, in dem ein Bedrohungsakteur Schwachstellen in öffentlichen Produktionssystemen nutzen muss. Darüber hinaus ist die kontinuierliche Einhaltung regelmäßiger Scans von Anwendungen in der Produktion eingeschlossen.

Durch die Implementierung automatisierter Scans und Tests können Sie sicherstellen, dass die integrierten Softwareabhängigkeiten die entsprechenden Patch-Levels aufweisen, und bestätigen, dass die Software die Sicherheitseinheitentests besteht. Außerdem kann es Code für Sicherheit mit statischer und dynamischer Analyse testen und validieren. Der Nachweis von Scanergebnissen wird sicher gespeichert, erfasst und als Teil eines automatisierten Änderungsmanagementprozesses zusammengefasst, der Bereitstellungen eingeht, bevor Änderungen in die Produktion hochgestuft werden.

Lesen Sie die folgenden Abschnitte, um einen Überblick über die wesentlichen Schritte zu erhalten, mit denen Sie den Lebenszyklus Ihrer Anwendungsentwicklung mit Hilfe der Tools von IBM Cloud DevSecOps absichern können.

Sichere Softwareentwicklungsarchitektur einrichten

Die einsatzfähige Architektur von DevSecOps Application Lifecycle Management rationalisiert den Prozess zur Einrichtung Ihrer sicheren Software-Lieferkette durch die Verwendung einer Reihe von Vorlagen für die kontinuierliche Integration (CI), die kontinuierliche Bereitstellung (CD) und die kontinuierliche Einhaltung (CC) der Toolchain. Diese Vorlagen verwenden eine Sammlung von Tool-Integrationen und anpassbaren Tekton-Referenzpipelines für das Erstellen, Scannen, Testen, Änderungsmanagement und die Bereitstellung von Anwendungen.

Von den Tekton-Pipelines wird ein Framework angepasster Scripts bereitgestellt, durch deren Verwendung Sie die konforme und automatisierte Orchestrierung von Code- und Konfigurationsänderungen sicherstellen sicherstellen können. Die Pipelines verwalten einen GitOps-Releasebestand, während sie Angaben erfassen und speichern, die zum Generieren überprüfbarer Änderungsanforderungen verwendet werden können. Darüber hinaus scannt die kontinuierliche Compliance-Pipeline die bereitgestellten Artefakte und die zugehörigen Quellcode-Repositorys in regelmäßigen Abständen auf Schwachstellen.

Weitere Informationen zur Konfiguration der einsatzfähigen Architektur für Ihre Anforderungen finden Sie im DevSecOps deployment guide. Sie können ein Projekt verwenden, um diese Architektur in allen Anwendungsentwicklungsumgebungen zu implementieren, sodass Ihr Entwicklungsteam einen Shift-Left-Ansatz verfolgen kann, indem Sicherheitsrisiken und -risiken frühzeitig erkannt werden, sodass sie berücksichtigt werden, bevor Code jemals in die Produktion gelangt.

Sicherstellung der kontinuierlichen Einhaltung der CC-Pipeline

Die CI/CD-Pipelines stellen sicher, dass der Anwendungscode, den Ihr Team entwickelt, sicher und ohne Sicherheitslücken ist, bevor Code mit Push-Operation an die Produktion übertragen wird. Sobald Ihr Code die Produktion erreicht, können Sie die CC-Pipeline verwenden, um Ihren Produktionscode kontinuierlich auf neue Schwachstellen zu scannen. Die CC-Pipeline kann manuell oder regelmäßig mithilfe von Auslösern ausgelöst werden.

Die CC-Pipeline scannt vorhandene implementierte Artefakte und ihre Quellenrepositorys unabhängig von Ihrem Implementierungszeitplan. Es führt die statischen und dynamischen Scans für den Anwendungsquellcode aus, erkennt geheime Schlüssel in Git-Repositorys, in der Stücklistenprüfung, in der CIS-Prüfung und im Vulnerability Advisor-Scan.

Probleme verwalten und Angaben erfassen, die für die Prüfung bereit sind

Nach dem Scannen und Ausführen von Prüfungen für Artefakte und Quellenrepositorys erstellt die Pipeline ein neues Vorfallproblem oder aktualisiert die vorhandenen Vorfallprobleme im Vorfallrepository. Schließlich erfasst die Pipeline mithilfe dieser Probleme und der Ergebnisse Angaben und fasst sie zusammen.

Es werden zwei Typen von Problemen aus Ihren CI-und CC-Pipelines gemeldet: Probleme mit Vorfällen und Probleme ohne Vorfälle. Vorfallprobleme können aufgrund von Sicherheitslücken oder CVEs auftreten, die innerhalb des Codes oder der bereitgestellten Artefakte gefunden werden. Nicht vorfallbezogene Probleme entstehen nicht aufgrund von Sicherheitslücken, sondern stellen vielmehr eine Abweichung von der Compliance-Haltung dar, z. B. Fehler bei Komponententests und Fehler bei der Überprüfung des Zweigschutzes. Weitere Informationen zum Verwalten von Problemen finden Sie unter Vorfallprobleme und Probleme ohne Vorfälle verarbeiten und Vorfallprobleme verwalten.

Die Nachweise für die Einhaltung der Vorschriften bilden die Spur, nach der die Prüfer bei einer Prüfung der Einhaltung der Vorschriften suchen. Eines der Ziele von DevSecOps ist die automatische Generierung und Speicherung von Beweisen in prüfbaren Änderungsanträgen und dauerhaften Beweismittelschränken. Weitere Informationen finden Sie unter Angaben.