DevOps und Security stehen sich häufig feindlich gegenüber, denn Mitarbeiter im DevOps-Team bekommen leicht das Gefühl, dass das Sicherheitsteam dazu da ist, ihnen die Arbeit schwerer zu machen. Sicherheitsfachkräfte haben dagegen oft das Gefühl, dass DevOps ihre Prioritäten nicht teilt und die Sicherheit nie so ernst nehmen wird, wie sie es gerne hätten.
Das nicht so sein, denn wenn gemeinsame Ziele festgelegt und verfolgt werden, können die Sicherheits- und DevOps-Teams des Unternehmens den Erfolg des jeweils anderen verstärken, anstatt aneinander vorbeizuarbeiten.
Diese konzeptionelle Kluft zwischen DevOps und Sicherheit ist leicht zu verstehen. Beide Teams haben traditionell grundverschiedene Ziele. Das DevOps-Team will schnelle, effiziente Releases, während das Sicherheitsteam alle Schwachstellen beseitigen will, auch wenn das bedeutet, den Lebenszyklus der Softwareentwicklung zu verlangsamen.
Bislang gab es wenig direkte Überschneidungen zwischen den Teams. Darüber hinaus ließ die Art und Weise, wie die Ziele festgelegt wurden, wenig Raum für ein gemeinsames Zielgefühl. Jedes Team definierte seine eigenen Prioritäten und verlangte dann, dass die anderen sie unterstützen.
Dies ist alles andere als ideal, und ein besserer Ansatz ist möglich. In einer gut geführten IT-Organisation sollten sich der DevOps- und Security-Betrieb gegenseitig verstärken, indem sie Ziele identifizieren und verfolgen, die für beide Seiten von Vorteil sind, was auch als DevSecOps bezeichnet wird. Auf diese Weise hat jedes Team das Gefühl, dass es am Erfolg des anderen beteiligt ist. Es bietet auch eine gemeinsame Sprache in Form von gemeinsamen Metriken, die beide Teams verwenden können, um ihren Fortschritt in Richtung der gemeinsamen Ziele zu messen.
Welche Ziele und Metriken die DevOps- und Sicherheitsteams am besten gemeinsam nutzen, hängt davon ab, welche Arten von Software sie bereitstellen, wie die Anwendungen gehostet werden und so weiter.
Die Experten von Palo Alto Networks sehen es als einen guten Anfang, die Anzahl der Sicherheitstickets zu reduzieren, die in einem bestimmten Zeitraum geöffnet werden Das ist ein offensichtliches Ziel für das Sicherheitsteam. Das DevOps-Team profitiert jedoch auch von der Reduzierung der Sicherheitstickets.
Ein Sicherheitsproblem bedeutet oft eine Verzögerung bei der Softwareauslieferung oder (bei schwerwiegenden Vorfällen) sogar ein Rollback zu einem früheren Release, was ein großer Schlag für das Ziel des DevOps-Teams ist, eine kontinuierliche Release-Geschwindigkeit zu erreichen.
Beide Teams können dazu beitragen, die Gesamtzahl der pro Monat oder Quartal geöffneten Sicherheitstickets zu reduzieren. Sicherheitstools, die sich in die Continous Integration/Continous Development (CI/CD)-Pipeline integrieren, können den Sicherheitsteams helfen, ihre Überprüfung von Schwachstellen zu verbessern und gleichzeitig die DevOps-Bemühungen zu automatisieren, um Sicherheitsprobleme während der Entwicklung und der Tests zu finden und zu beheben.
Ein zweiten wichtiger Punkt ist die Time-to-Deploy. Das ist eine Kennzahl, auf deren Minimierung sich das DevOps-Team traditionell konzentriert hat. Je schneller jedes Release bereitgestellt werden kann, desto näher kommt man der kontinuierlichen Bereitstellung.
Auch die Sicherheit profitiert von einer geringeren Time-to-Deploy, denn das bedeutet, dass Sicherheitsprobleme durch ein neues Release schneller behoben werden können. Das Sicherheitsteam kann dazu beitragen, die Time-to-Deploy zu minimieren, indem es seine Review-Prozesse für Release-Kandidaten automatisiert und daran arbeitet, die Sicherheit nach links zu verlagern, sodass Sicherheitsprobleme früher in der Pipeline identifiziert werden, wenn sie in der Regel leichter zu beheben sind.
Die Anzahl der Sicherheitsschwachstellen, die identifiziert werden, bevor die Software in Produktion geht, verbessert sowohl das Ergebnis von DevOps als auch die Sicherheit. Für das DevOps-Team bedeutet es ein geringeres Risiko, dass Sicherheitsprobleme nach der Bereitstellung ein Rollback auslösen oder eine ernsthafte Unterbrechung des kontinuierlichen Lieferzyklus verursachen. Für die Sicherheit bedeutet es, dass weniger schwerwiegende Schwachstellen ihren Weg in die Produktionsumgebung finde, wo sie den größten Schaden anrichten können.
Durch die Zusammenarbeit bei der Identifizierung von Fehlern im vorproduzierten Code können DevOps und Security also den Erfolg des jeweils anderen unterstützen.
Die Behebung von Sicherheitsproblemen erfordert die Zusammenarbeit zwischen dem Sicherheits- und dem DevOps-Team. Das Sicherheitsteam übernimmt die Führung bei der Identifizierung des Fehlers, und das DevOps-Team ist für die Implementierung eines Fixes zuständig. Aufgrund der gemeinsamen Verantwortung, die mit dieser Metrik verbunden ist, ist die gemeinsame Verfolgung (und das Bestreben, die Zeit bis zur Behebung zu minimieren) ein effektives Ziel für DevOps- und Sicherheitsteams.
Wenn ein Release abgelehnt wird, weil es die Sicherheitstests nicht bestanden hat, sind nicht nur die Sicherheitsingenieure unglücklich darüber, dass DevOps versucht hat, ein Release herauszubringen, das Schwachstellen enthält. Auch das DevOps-Team ist gezwungen, Code neu zu schreiben und mit Verzögerungen im Auslieferungsprozess zu rechnen. Spannungen können auch zwischen den beiden Teams entstehen, wenn DevOps das Gefühl hat, dass die Sicherheitstests unnötig streng sind oder sich auf die falschen Punkte konzentrieren.
Wenn sich beide Teams jedoch ein gemeinsames Ziel setzen, die Anzahl der fehlgeschlagenen Sicherheitstests zu reduzieren, gewinnen sie ein Gefühl der gemeinsamen Verantwortung für diese Metrik. Im Gegenzug ist es wahrscheinlicher, dass sie zusammenarbeiten, um das Problem zu beheben, anstatt Energie mit gegenseitigen Schuldzuweisungen zu verschwenden.
Es mag für DevOps-Teams verlockend sein, Sicherheitsaudits als etwas zu betrachten, durch das sie sich durchwursteln müssen, was sie aber im Grunde ignorieren können. Das DevOps-Team wird vielleicht kritisiert, wenn Sicherheitsaudits Schwachstellen in DevOps-Prozessen finden, aber der Hammer landet vor allem auf dem Sicherheitsteam, wenn Audits fehlschlagen. Die Realität ist jedoch, dass fehlgeschlagene Sicherheitsaudits beide Teams in Gefahr bringen, unabhängig davon, wer die Verantwortung für das Versagen trägt.
Wiederkehrende Fehlschläge bei Sicherheitsaudits schaden dem Ruf der gesamten IT-Organisation und könnten schließlich eine Überholung beider Teams auslösen. Andererseits wirft eine kontinuierliche Aufzeichnung erfolgreicher Sicherheitsaudits ein positives Licht auf Sicherheitsingenieure und DevOps-Ingenieure gleichermaßen. Die Mitglieder beider Gruppen können stolz darauf sein (und bei ihrem nächsten potenziellen Arbeitgeber damit angeben), Teil eines Teams zu sein, das bei der Erfüllung von Sicherheitszielen große Erfolge vorweisen kann.
Es ist einfach, über die Wichtigkeit der Überbrückung der Kluft zwischen DevOps-Teams und Sicherheitsteams zu sprechen, aber es ist oft viel schwieriger, diese Teams dazu zu bringen, in der Praxis zusammenzuarbeiten. Durch die Festlegung gemeinsamer Ziele und Metriken, für die jedes Team gemeinsam verantwortlich ist, können Unternehmen nach Meinung von Palo Alto Networks die Ergebnisse verbessern und die Spannungen abbauen, die DevOps und Sicherheit oft voneinander trennen.
Neueste Kommentare
Noch keine Kommentare zu DevOps und Security im Einklang
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.