Cloud-native Security: Prinzipien für eine sichere Architektur

Moderne Softwarearchitekturen orientieren sich zunehmend am Cloud-native Paradigma. Cloud-Architekten, DevOps-Engineers und Softwareentwickler tragen Verantwortung für zahlreiche sicherheitstechnische Anforderungen beim Design, der Entwicklung sowie dem Betrieb von Cloud-Anwendungen. Die wichtigsten Prinzipien finden Sie hier zusammengefasst.

Die Herausforderung

Moderne Softwareanwendungen nutzen die Vorteile von Cloud Computing. Sie skalieren automatisch, sind resilient, in Container verpackt und als verteilte Systeme (z.B. Microservices) implementiert. Dank Cloud Computing konnte sich die Cloud-native Architektur als modernes Softwaremodell etablieren. Die Cloud Native Computing Foundation (CNCF) liefert eine gängige Definition – nachzulesen unter: https://github.com/cncf/toc/blob/main/DEFINITION.md.

Sichere Softwaresysteme zu bauen, sollte uns allen ein Anliegen sein. In unserer stark vernetzten Welt ist eine sichere digitale Infrastruktur für uns alle von zentraler Bedeutung. Die verteilte Architektur des Cloud-native-Paradigmas verfolgt eigene Prinzipien und Designmuster, welche passende Sicherheitskonzepte erfordern. Mohammed Ilyas Ahmed vergleicht diese Herausforderung in seinem Buch «Cloud-Native DevOps» treffend mit einem Haufen wilder Kätzchen, die es zu bändigen gilt. Er schreibt:

„As we bid farewell to the old-school ways and embrace dynamic and scattered computing setups, managing who gets access to what becomes as challenging as herding a bunch of hyperactive kittens.“ (Ahmed, M. I. (2024). Cloud-Native DevOps : Building Scalable and Reliable Applications (1st ed. 2024.). Apress. https://doi.org/10.1007/979-8-8688-0407-6)

In klassischen Rechenzentren wurde früher ein klarer Perimeter, eine Aussengrenze, gezogen. Alles innerhalb des Firmennetzwerks galt als „sicher“. Diese Umgrenzung existiert in der Cloud heute kaum noch. Nutzer, Daten und Dienste befinden sich überall: in der Cloud, zu Hause und mobil.

Sicherheitsprinzipien

Folgende sechs Prinzipien sind elementar bei der Umsetzung sicherer Cloud-native Systeme.

Zero Trust

Jede Anfrage muss explizit autorisiert werden. Jeder Zugriffsversuch, jede Operation, jede Transaktion wird überprüft und niemals automatisch vertraut. Das gilt sowohl für innerhalb als auch ausserhalb des Netzwerks.

Least Privilege

Die Rechte werden auf das Minimum reduziert. Jeder Benutzer, Service oder Dienst erhält nur jene Berechtigungen, die für seine jeweilige Aufgabe zwingend erforderlich sind.

Defense in Depth

Mehrere sich ergänzende Sicherheitssichten werden kombiniert, um die Angriffsfläche zu minimieren. Dabei werden Schutzmechanismen auf verschiedenen Ebenen – etwa im Netzwerk, bei den Identitäten, den Applikationen und den Daten – implementiert.

Shift Left

Das Thema Sicherheit sollte bereits früh im Entwicklungsprozess von Cloud-native-Systemen berücksichtigt werden. Sicherheitsmassnahmen- und tests werden auf der Zeitachse nach vorne verlagert („Shift Left”), um potenzielle Schwachstellen möglichst früh zu erkennen und zu beheben. Diese Vorgehensweise fördert eine DevSecOps-Kultur und macht Sicherheit zu einem natürlichen Bestandteil des Entwickleralltags.

Immutable Infrastructure

Virtuelle Server, Container oder Images werden nach deren Deployment nicht mehr verändert (immutable, engl. unveränderlich). Änderungen werden also nicht direkt am laufenden System vorgenommen, sondern durch neue Instanzen ersetzt. Niemand kann dadurch auf eine Maschine zugreifen und „mal schnell etwas ändern“. Dadurch wird das Risiko von ungeprüften oder schädlichen Änderungen minimiert. Jede Änderung kann zudem in Form von Code oder Pipelines abgebildet werden, was ideal für Audits, Versionierung und Compliance ist.

Security as Code

Sicherheitsmassnahmen werden durch Security as Code (SaC) direkt in den Softwareentwicklungsprozess integriert. Sicherheitschecks werden dabei z. B. in CI/CD-Pipelines eingebettet und Container automatisch auf Schwachstellen überprüft. Sicherheitsrichtlinien und -konfigurationen, wie z. B. Policies as Code, können automatisiert und versioniert werden und sind dadurch auch überprüfbar.

Fazit

Cloud-native Anwendungen sicher zu gestalten ist anspruchsvoll, aber machbar. Die vorgestellten Prinzipien bieten eine solide Grundlage für mehr Sicherheit im gesamten Lebenszyklus. 100 % Sicherheit ist nie erreichbar – entscheidend ist ein ausgewogenes Verhältnis zwischen Schutz, Nutzen, Aufwand und Benutzerfreundlichkeit. Wer Cloud-native denkt, muss Sicherheit von Beginn an mitplanen – nur so entsteht Vertrauen in eine sichere digitale Zukunft.

Beitrag teilen

Philipp Galliker

Philipp Galliker ist Microsoft Cloud Developer bei der Beetroot AG in Sursee und bloggt aus dem Unterricht des CAS Cloud and Platform Manager. Er ist überzeugt: Sichere Cloud-native Anwendungen sind wichtige Bausteine unserer digitalen Lebensweise und werden sich noch stärker in unsere aller Alltag einflechten. https://www.linkedin.com/in/philipp-galliker-37283b335/

Alle Beiträge ansehen von Philipp Galliker →

Schreibe einen Kommentar