Title
Security thoughts on modern software development
Subtitle (de)
A survey about microservice security
Description (de)
Fachhochschule St. Pölten, Masterarbeit 2021, Studiengang Information Security
Description (de)
Mit dem Aufkommen der Containertechnologie und Cloud Computing wurden Microservice Architekturen populär. Aber was sind Microservices? Warum wurden sie so beliebt und warum verändern sie die Funktionsweise von moderner Softwareentwicklung? Was sind die Vor- und Nachteile von Microservice, auch von Seiten der Sicherheit im Gegensatz zu monolithischen Services. Welche Herausforderungen gilt es zu bewältigen und welche Lösungen gibt es bereits dazu? Die Microservice Entwicklung wuchs erstaunlich schnell seit ihrer Entstehung im Jahr 2007, trotzdem gibt es seither noch keine Richtlinen oder Best Practises zu einer sicheren Entwicklungsweise. Dies verunmöglicht es kleinen Unternehmen sichere Microservices zu programmieren, da die Ressourcen für die Auffindung von Problemen und Lösungen fehlen; selbst Unternehmen mit großem Umsatz arbeiten großteils nach Gutdünken und arbeiten nach keinem Standard, weil schlichtweg kein Standard existiert. Diese Arbeit sammelt Eigenschaften von monolithischen Services und Microservices und sammelt dazugehörige Sicherheitsherausforderungen, die durch die Microservice-Architektur entstehen. Bestehende Lösungen zu den Problemen werden präsentiert und diskutiert, ob diese auch sinnvoll sind. Dabei unterscheidet diese Arbeit zwischen allgemeinen Konzepten und bereits konkreten Implementationen. Die gesammelten Ergebnisse werden in einem Entscheidungsbaum zusammengefasst, der die Entscheidung für oder gegen die Nutzung von Microservices im konkreten Fall erleichtern soll. Wenn Microservices erstellt werden sollen, gibt es dann noch eine Checkliste, was bei der Erstellung von Microservices sicherheitstechnisch beachtet werden muss.
Description (en)
With the advent of container solutions and cloud computing, micro services are becoming more popular. But what are micro services? Why are they becoming so popular and why are they changing the mechanics of modern software development? What are their advantages and disadvantages, also in terms of security, in comparison to monolithic services? What are the challenges to overcome microservice security and what are the existing solutions to them? Microservice development has increased incredibly since its beginning in 2007, but still no complete guideline to a secure development exists, which makes in nearly impossible to small companies to really create trustful and secure services; even high budget companies do basically what they feel like, and share no standard as there is none. This work collects properties of monolithic services and microservices and collects security challenges that arise when using a microservice approach. Existing solutions to these challenges are presented and discussed, if they are applicable. This work distinguishes between general concepts and concrete implementations. The collection results in an decision tree, whether or not to use microservices and if so, a checklist what security aspects needs to be considered when using them. vii
Keywords (de)
Softwareentwicklung ; Mikroservice ; Computersicherheit ; Container Informatik