DevOps ist Ihnen bestimmt ein Begriff, aber wissen Sie, was DevSecOps ist? Bei DevSecOps geht es darum, den Aspekt der Softwaresicherheit in den Workflow der Softwarebereitstellung einzubeziehen.
Um zu verstehen, warum das wichtig ist, müssen wir uns ansehen, wie Softwaresicherheit in der Vergangenheit gehandhabt wurde. Traditionell waren Sicherheitsaktivitäten völlig separat von allen anderen Abläufen des Entwicklungsprozesses. Die Entwickler schrieben den Code und die IT-Teams implementierten ihn. An Sicherheit hat zu diesem Zeitpunkt niemand wirklich gedacht. Erst nachdem die Software geschrieben und in der Produktionsumgebung implementiert war, wurden sowohl der Code als auch die Hostumgebungen von Sicherheitstechnikern auf Schwachstellen überprüft.
Das ist natürlich kein effizienter Sicherheitsansatz, vor allem nicht in Cloud-Umgebungen mit ihren typisch kurzen Bereitstellungszeiten. Wurde ein Sicherheitsproblem festgestellt, musste bereits implementierter Code revidiert werden. Zudem wurden Schwachstellen und Sicherheitslücken oft erst ersichtlich, wenn die Software schon in der Produktionsphase war, was Unternehmen Sicherheitsrisiken aussetzte.
Das DevSecOps-Konzept hingegen macht sich den „Shift left“-Ansatz zunutze, also die frühzeitige Berücksichtigung der Sicherheit: Sicherheitsmaßnahmen werden in alle Phasen der Softwarebereitstellung integriert, um sicherzustellen, dass Entwickler schon beim Verfassen des Codes die Sicherheit berücksichtigen, Software vor der Bereitstellung auf Sicherheitslücken getestet wird und IT-Teams effizient und schnell mit eventuellen Sicherheitsproblemen umgehen können, die nach der Bereitstellung auftreten.
DevOps als Grundlage für DevSecOps
DevSecOps ist nicht einfach eine Alternative zu DevOps, sondern weitet das Grundkonzept der DevOps-Philosophie aus, sprich die Idee, dass Entwickler und IT-Teams eng zusammenarbeiten (statt nebeneinander vorbei zu agieren), um Sicherheitsprozesse von Anfang an zu berücksichtigen. Eine effektive DevSecOps-Strategie baut auf DevOps auf und integriert die Sicherheit in die gesamte CI/CD-Entwicklungspipeline.
DevSecOps ist kein Tool, sondern eine Unternehmenskultur
Es gibt viele Tools und Prozesse, die ein Unternehmen bei ihrem DevSecOps-Ansatz unterstützen, doch letztendlich ist DevSecOps eine Grundeinstellung.
Damit DevSecOps erfolgreich umgesetzt werden kann, müssen die entsprechenden kulturellen Werte im Unternehmen verankert sein. Entwickler, IT-Teams, Sicherheitstechniker und alle anderen Mitarbeiter, die in die Softwarebereitstellung eingebunden sind, müssen sich dem Grundgedanken verschreiben, dass die Softwaresicherheit immer im Vordergrund steht. Bevor eine Entscheidung in Bezug auf eine Anwendung getroffen wird, muss sich das Team Gedanken über die sicherheitsrelevanten Auswirkungen machen. Ist das der Fall, haben Sie das DevSecOps-Modell erfolgreich umgesetzt.
DevSecOps in der Praxis
Wie Sie DevSecOps am besten in Ihrem Unternehmen umsetzen, hängt von Ihren spezifischen Anforderungen ab. Doch es gibt einige allgemeine Strategien, die Ihnen den Weg weisen können:
Schulungen: Stellen Sie sicher, dass alle an der Softwareentwicklung beteiligten Personen ein gutes Verständnis von aktuellen Sicherheitsbedrohungen haben und wissen, wie wichtig deren Bekämpfung ist.
Kommunikation: Ermöglichen Sie eine effektive Kommunikation zwischen allen Teammitgliedern, damit sie sich schnell über Sicherheitsprobleme austauschen können.
Sicherheitsplaybooks: Erstellen Sie Playbooks mit teamspezifischen Anweisungen zur Reaktion auf Sicherheitsvorfälle.
Audits und Compliance: Machen Sie Sicherheitsaudits und Complianceprüfungen zu einem routinemäßigen Bestandteil der Softwareentwicklung.
Die richtigen Tools: API-basierte Tools für die Cloud-Sicherheit helfen Ihnen, die Durchsetzung von Sicherheits- und Compliancerichtlinien in der Cloud zu automatisieren.
So nehmen Entwickler das Thema Sicherheit ernst
Wenn Unternehmen DevSecOps-Ansätze einführen, kommt die größte Skepsis meist aus den Reihen der Entwickler. Daher lautet die entscheidende Frage: Wie überzeugen Sie Entwickler davon, dass es sich für sie lohnt, mehr über das Thema Sicherheit zu lernen und zusätzlich zu ihrem bisherigen Arbeitspensum sicherheitsrelevante Schritte einzubauen?
Hier kann das richtige Tool den Ausschlag geben. Tools, die APIs des Cloud-Anbieters nutzen, ermöglichen Entwicklern, selbstentdeckend zu lernen und folgenschwere Fehler zu vermeiden. Es ist möglich, Richtlinien in AWS unter Nutzung cloudnativer Tools zu automatisieren, doch wenn Sie eine Multi-Cloud-Umgebung nutzen, für Ihr Unternehmen strikte Compliancevorgaben gelten oder Ihre AWS-Umgebung viele Konten umfasst, brauchen Sie wahrscheinlich ein Drittanbietertool, um alle gewünschten Aufgaben effizient über eine zentrale Konsole zu erledigen. Tipps und Hinweise zur Auswahl des richtigen Tools für Ihr Unternehmen finden Sie in diesem Blogbeitrag.
Einen Erfahrungsbericht der DHI Group über den erfolgreichen Aufbau einer DevSecOps-Kultur finden Sie hier: From ‘DevOps vs. SecOps’ to DevSecOps