SlideShare a Scribd company logo
1 of 29
Download to read offline
Holistische Sicherheit
für Microservice Architekturen
OOP 2020 // @LeanderReimer #cloudnativenerd {{ 04.02.2020 }}
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
#whoami
2
Mario-Leander Reimer
Chief Software Architect
QAware GmbH
https://imgur.com/gallery/LGAZEqu
The Monolith
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Monolithische Systeme waren vergleichsweise
einfach abzusichern.
• Kleinere Angriffsfläche in Bezug auf
die öffentlichen APIs.
• Keine Verteilung. Kaum IPC.
• Überschaubarer Technologie-Stack
• Geringe Infrastruktur-Komplexität
• Managed Infrastruktur (OS Updates,
Version Upgrades, Patches)
• Lange Release-Zyklen. One Team.
4
Monolithic
Vintage System
Users
system.example.com
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Microservice-basierte Systeme sind komplexer.
Ihre Absicherung ist deutlich aufwändiger.
• Starke Verteilung und zahlreiche
Kommunikationskanäle
• Heterogener Technologie-Stack
• Hohe Infrastruktur-Komplexität mit
vielen Komponenten
• Neues Betriebsmodell mit mehr
Verantwortung beim Entwickler
• Kurze Release Zyklen. Viele Teams.
5
Service
A
Service
B
Service
C
Service
X
Service
Y
Service
Z
Users
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Microservice-basierte Systeme müssen auf allen Ebenen
und Sichten der Softwarearchitektur gesichert werden.
6
TI - ArchitekturT - ArchitekturA - Architektur
Konzeptionelle Sicht
Modulsicht
Ausführungssicht
Programmsicht
Anforderungen
Komponenten
Schnittstellen
Nachbarsysteme
Anwendungsfälle
Entitätenmodell
Rechner
Netzwerke
Infrastruktur
Produkte
Bibliotheken
Frameworks
Technologien
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Die Sicherheitsarchitektur eines Systems sichert
die Architektur auf den verschiedenen Ebenen.
7
Anwendungs-Architektur
Technische Architektur
Sichere
Anwendungs-Architektur
Sichere
Technische Architektur
Sicherheits-Anforderungen
Security Targets
Externe Quellen:

OWASP Top 10, BSI, PSA,
Technische Infrastruktur
Sichere
Technische InfrastrukturSicherheits

Architektur
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Die Sicherheitsarchitektur besteht aus abgesicherten
Komponenten und Kommunikationskanälen.
8
Komponente A Komponente B
Kanal A-B
Trust boundary

(Abgesicherter)
Kommunikationskanal
Komponente
Schnittstelle über einen
Gatekeeper gesichert
• Ein System besteht aus Komponenten. Diese sind durch Kommunikationskanäle verbunden.
• Beispiele für Komponenten: Datacenter, VMs, Container, App Server, Datenbanken, Softwaremodule, Browser, …
• Jede Komponente wird von jemanden bereitgestellt, der vertrauenswürdig oder nicht vertrauenswürdig ist.
• Jede Komponente hat eine definierte Sicherheit (von unsicher bis sehr sicher): Wie gründlich muss der Gatekeeper
sein: Vom Jedermanns-Recht bis zur Festung
• Jeder Kanal hat eine definierte Sicherheit (von sehr sicher bis unsicher): Wie robust ist der Kanal und das dabei
verwendete Protokoll gegenüber den typischen Angriffen?
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Sicherheitskomponenten können Sicherheitsgruppen bilden
mit harten Grenzkontrollen oder laxer innerer Sicherheit.
9
Komponente A Komponente B
Komponente D
Komponente C
Strenge Sicherheit
Schwache Sicherheit
Keine Sicherheit
Sicherheitsgruppe und

Trust Boundary
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Konzepte aus dem Domain Driven Design helfen
beim Entwurf der Sicherheitsarchitektur.
• Bounded Context definiert die
fachlichen Systemgrenzen
• Fachlicher und technischer
Schnitt mit Event Storming
• Anti-Corruption Layer kapselt
und isoliert die Zugriffe
zwischen Bounded Contexts
• Value Objects: self-validated,
immutable Data Types
10
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Introducing DHARMA: Domain Hierarchy Access
Regulation for Microservices Architecture
• Nützliche Access Control Mechanismen für Microservices
• Network-Level Controls: Segmentation, SSL/TLS, SPIFFE
• Infrastructure: Network Overlays, Proxies / API Gateways, Service Meshes
• Application Level Controls: API keys, OAuth 2.0, OpenID Connect, JWT
• Die API Access Control Design Methodology mit DHARMA:
1. Identify Trust Domains
2. Define trust and access mechanisms
3. Determine interior and boundary endpoints
4. Select domain implementation platforms
11
https://www.ca.com/content/dam/ca/us/files/ebook/securing-microservice-apis-sustainable-and-scalable-access-control.pdf
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware12
DMZ A Shared PaaS
Reverse
Proxy
Reverse
Proxy
Namespace Bounded Context A
APIGateway
Reverse
Proxy
Users
3rd Party
Apps
Mobile
Namespace Security Context
SecurityAPIGateway
Auth Token <-> JWT
Auth Service 

X
Auth Service 

Y
Auth Service 

Z
Service A Service B
JWKS

Service
3
JWT JWT
5 2
2
1
4
4
1. Proprietary Authentication Token
2. Authorise and swap token to JSON Web Token
3. Propagate Token
4. Verify Token with JSON Web Key Set
5. Propagate Token
6. Like 4. Verify Token with JSON Web Key Set
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware13
W E
N
S
Ingress
Egress
API Gateways für
Nord-Süd Kommunikation
Service Meshes für
Ost-West Kommunikation
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware15
API Gateways
are like the Façade Pattern in

Cloud Native Application Design
and Microservice Architectures
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
• Traffic Management: Path, Header, Host based Routing, Path Rewrite
• Security: AAA, Terminate TLS, Support for JWT and JWKS, Open ID
• Quality of Service: Rate Limiting, Quota
• Observability: Logging, Monitoring, Tracing, Auditing
• Resiliency: Circuit Breaker, Retry, Timeouts
• Protocol Translation: XML to JSON, gRPC to JSON, …
• Transformation: Fan Out / Collect, Backend for Frontend, GraphQL
• Rollout and Deployment: A/B Deployment, Canary Release, et.al.
16
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Four Categories of API Gateways
A. API Management Solutions: Kong, Tyk, Mulesoft,
3scale, Apigee, …
B. Build Your Own API Gateway: Netflix Zuul 2, Spring
Cloud Gateway, Vert.x, Ballerina, Camel, …
C. Service Proxies: Envoy, Nginx, OpenResty, Traefik, …
D. Cloud Native API Gateways: KrakenD, Ambassador,
Gloo, Maesh, …
17
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Container Orchestration Patterns
1. Sidecar Container: Extend container behaviour
• Log Extraction / Reformatting (fluentd, logstash)
• Scheduling (cron, quartz)
18
2. Ambassador Container: Proxy communication
• TLS Tunnel (stunnel, ghostunnel)
• Circuit Breaking (Envoy, Linkerd, Istio)
• Request Monitoring (Istio, Linkerd)
3. Adapter Container: Provide a standardized interface
• Monitoring (Prometheus)
• Configuration (ConfigMaps, Secrets)
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware19
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Istio Service Mesh Architecture and Components
20
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Service Mesh für Arme auf Basis Envoy
21
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware22
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
The 4C’s of Cloud Native Security
23
Cloud
Cluster
Container
Code
https://kubernetes.io/docs/concepts/security/overview/#the-4c-s-of-cloud-native-security
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Code
• Apply Defensive Programming Practices: Educate and Read
• 3rd Party Dependency Security: Trusted Repositories (Nexus,
Artifactory), Build Tool Integration (OWASP Plugins)
• Static Code Analysis: Google Error Prone, Sonar, et.al.
• Dynamic Probing Attacks als Teil der CI/CD Pipeline: Headless
OWASP Zed Attack Proxy, Crashtest Security Suite
• Zero Trust Mindset: Access over TLS only, limit port ranges
24
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Container
• Disallow Privileged Users.
• Build minimal images. Consider Distroless.
• Use Trusted Registries and Trusted Images.
• Container Vulnerability Scanning und OS Dependency Security als
Teil der CI/CD Pipeline mit Tools wie Claire
• Image Signing and Enforcement: CNCF Projects (TUF and Notary)
are useful tools for signing container images and maintaining a
system of trust, IBM’s Portieris for enforcement.
25
# Start by building the application.
FROM golang:1.12 as build
WORKDIR /go/src/app
ADD . /go/src/app
RUN go get -d -v ./...
RUN go build -o /go/bin/app
# Now copy it into our base image.
FROM gcr.io/distroless/base
COPY --from=build /go/bin/app /
CMD ["/app"]
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Cluster
• Sowohl die Komponenten des Clusters selbst auch die Applications-Komponenten müssen gesichert
werden. Empfehlung: Nutze einen Managed Cluster as a Service Dienst.
• Application secrets management (and encrypting them in etcd at rest) 

https://kubernetes.io/docs/concepts/configuration/secret/
• Pod Security Policies: 

https://kubernetes.io/docs/concepts/policy/pod-security-policy/
• Quality of Service (and Cluster resource management) 

https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/
• Network Policies: 

https://kubernetes.io/docs/concepts/services-networking/network-policies/
• TLS For Kubernetes Ingress:

https://kubernetes.io/docs/concepts/services-networking/ingress/#tls
26
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Cloud
• Beachte die Cloud Provider Security Guidelines!
27
IaaS Provider Link
Alibaba Cloud https://www.alibabacloud.com/trust-center
Amazon Web Services https://aws.amazon.com/security/
Google Cloud Platform https://cloud.google.com/security/
IBM Cloud https://www.ibm.com/cloud/security
Microsoft Azure https://docs.microsoft.com/en-us/azure/security/azure-security
VMWare VSphere https://www.vmware.com/security/hardening-guides.html
// OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware
Holistische Sicherheit für Microservice-basierte Systeme
betrifft alle Ebenen vom Entwurf bis zum Betrieb.
28
Infrastructure
Certificates
Tokens
Passwords
Security Testing
DAST + SAST
Secure Components
Domain Driven Design
Security Patterns
Sicherheitsanforderungen
Schutzbedarfsanalyse
Angreifer-Analyse
OWASP Top 10
Defensive Programming
Dependencies
Package Signing
Container Security
Mario-Leander Reimer
Chief Software Architect, QAware GmbH
mario-leander.reimer@qaware.de
https://www.qaware.de
https://speakerdeck.com/lreimer/
&

More Related Content

What's hot

Kubernetes ist so viel mehr als ein Container Orchestrierer
Kubernetes ist so viel mehr als ein Container OrchestriererKubernetes ist so viel mehr als ein Container Orchestrierer
Kubernetes ist so viel mehr als ein Container OrchestriererQAware GmbH
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightChristinaLerch1
 
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8sKontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8sQAware GmbH
 
Enterprise Cloud Native ist das neue Schwarz
Enterprise Cloud Native ist das neue SchwarzEnterprise Cloud Native ist das neue Schwarz
Enterprise Cloud Native ist das neue SchwarzQAware GmbH
 
Making the internet faster HTTP/3 und QUIC
Making the internet faster HTTP/3 und QUICMaking the internet faster HTTP/3 und QUIC
Making the internet faster HTTP/3 und QUICQAware GmbH
 
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Mario-Leander Reimer
 
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfA Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfMario-Leander Reimer
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteQAware GmbH
 
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...QAware GmbH
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.QAware GmbH
 
Dataservices - Data Processing mit Microservices
Dataservices - Data Processing mit MicroservicesDataservices - Data Processing mit Microservices
Dataservices - Data Processing mit MicroservicesQAware GmbH
 
In-Memory Computing mit Apache Ignite und Kubernetes
In-Memory Computing mit Apache Ignite und KubernetesIn-Memory Computing mit Apache Ignite und Kubernetes
In-Memory Computing mit Apache Ignite und KubernetesQAware GmbH
 
stackconf 2020 | SecDevOps in der Cloud by Florian Wiethoff
stackconf 2020 | SecDevOps in der Cloud by Florian Wiethoffstackconf 2020 | SecDevOps in der Cloud by Florian Wiethoff
stackconf 2020 | SecDevOps in der Cloud by Florian WiethoffNETWAYS
 
Cloud Connectivity - Herausforderungen und Loesungen
Cloud Connectivity - Herausforderungen und LoesungenCloud Connectivity - Herausforderungen und Loesungen
Cloud Connectivity - Herausforderungen und LoesungenDaniel Steiger
 
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturContinuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturQAware GmbH
 
Enterprise CI/CD: Continuous Integration & Delivery im Enterprise-Umfeld
Enterprise CI/CD: Continuous Integration & Delivery im Enterprise-UmfeldEnterprise CI/CD: Continuous Integration & Delivery im Enterprise-Umfeld
Enterprise CI/CD: Continuous Integration & Delivery im Enterprise-UmfeldQAware GmbH
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionQAware GmbH
 
In den sicheren Hafen jax2020
In den sicheren Hafen jax2020In den sicheren Hafen jax2020
In den sicheren Hafen jax2020Stephan Kaps
 
Leveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkQAware GmbH
 
Kaps - Es muss nicht immer Kubernetes sein
Kaps - Es muss nicht immer Kubernetes seinKaps - Es muss nicht immer Kubernetes sein
Kaps - Es muss nicht immer Kubernetes seinStephan Kaps
 

What's hot (20)

Kubernetes ist so viel mehr als ein Container Orchestrierer
Kubernetes ist so viel mehr als ein Container OrchestriererKubernetes ist so viel mehr als ein Container Orchestrierer
Kubernetes ist so viel mehr als ein Container Orchestrierer
 
Softwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha NightSoftwerkskammer Chemnitz Special Pecha Kucha Night
Softwerkskammer Chemnitz Special Pecha Kucha Night
 
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8sKontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
Kontinuierliches (Nicht)-Funktionales Testen von Microservices auf K8s
 
Enterprise Cloud Native ist das neue Schwarz
Enterprise Cloud Native ist das neue SchwarzEnterprise Cloud Native ist das neue Schwarz
Enterprise Cloud Native ist das neue Schwarz
 
Making the internet faster HTTP/3 und QUIC
Making the internet faster HTTP/3 und QUICMaking the internet faster HTTP/3 und QUIC
Making the internet faster HTTP/3 und QUIC
 
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
Per Anhalter durch den Cloud Native Stack (Extended Edition) #oop2017
 
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConfA Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
A Hitchhiker’s Guide to the Cloud Native Stack. #ContainerConf
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
 
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
Cloud Native Migration: Wie IT-Landschaften ihren Weg auf eine Cloud-Native-P...
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
 
Dataservices - Data Processing mit Microservices
Dataservices - Data Processing mit MicroservicesDataservices - Data Processing mit Microservices
Dataservices - Data Processing mit Microservices
 
In-Memory Computing mit Apache Ignite und Kubernetes
In-Memory Computing mit Apache Ignite und KubernetesIn-Memory Computing mit Apache Ignite und Kubernetes
In-Memory Computing mit Apache Ignite und Kubernetes
 
stackconf 2020 | SecDevOps in der Cloud by Florian Wiethoff
stackconf 2020 | SecDevOps in der Cloud by Florian Wiethoffstackconf 2020 | SecDevOps in der Cloud by Florian Wiethoff
stackconf 2020 | SecDevOps in der Cloud by Florian Wiethoff
 
Cloud Connectivity - Herausforderungen und Loesungen
Cloud Connectivity - Herausforderungen und LoesungenCloud Connectivity - Herausforderungen und Loesungen
Cloud Connectivity - Herausforderungen und Loesungen
 
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer InfrastrukturContinuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
Continuous Delivery für Cloud-native Anwendungen auf Cloud-nativer Infrastruktur
 
Enterprise CI/CD: Continuous Integration & Delivery im Enterprise-Umfeld
Enterprise CI/CD: Continuous Integration & Delivery im Enterprise-UmfeldEnterprise CI/CD: Continuous Integration & Delivery im Enterprise-Umfeld
Enterprise CI/CD: Continuous Integration & Delivery im Enterprise-Umfeld
 
Steinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen EvolutionSteinzeit war gestern! Wege der cloud-nativen Evolution
Steinzeit war gestern! Wege der cloud-nativen Evolution
 
In den sicheren Hafen jax2020
In den sicheren Hafen jax2020In den sicheren Hafen jax2020
In den sicheren Hafen jax2020
 
Leveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with Spark
 
Kaps - Es muss nicht immer Kubernetes sein
Kaps - Es muss nicht immer Kubernetes seinKaps - Es muss nicht immer Kubernetes sein
Kaps - Es muss nicht immer Kubernetes sein
 

Similar to Holistische Sicherheit für Microservice Architekturen

Das kleine Einmaleins der sicheren Architektur
Das kleine Einmaleins der sicheren ArchitekturDas kleine Einmaleins der sicheren Architektur
Das kleine Einmaleins der sicheren ArchitekturQAware GmbH
 
Das kleine Einmaleins der sicheren Architektur @heise_devSec
Das kleine Einmaleins der sicheren Architektur @heise_devSecDas kleine Einmaleins der sicheren Architektur @heise_devSec
Das kleine Einmaleins der sicheren Architektur @heise_devSecMario-Leander Reimer
 
Migration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformMigration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformQAware GmbH
 
Compliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-AchtCompliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-AchtBATbern
 
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“OPEN KNOWLEDGE GmbH
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.QAware GmbH
 
Fraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativFraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativFraunhofer AISEC
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
 
Multi-Cloud eGov Webinar 20220322
Multi-Cloud eGov Webinar 20220322Multi-Cloud eGov Webinar 20220322
Multi-Cloud eGov Webinar 20220322Thomas Treml
 
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...Ramon Anger
 
A Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native StackA Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native StackQAware GmbH
 
Innovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzenInnovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzenAmazon Web Services
 
Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)QAware GmbH
 
Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Josef Adersberger
 
Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?QAware GmbH
 
Oracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzOracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzVolker Linz
 
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?QAware GmbH
 
IT-Sicherheit und agile Entwicklung? Geht das? Sicher!
IT-Sicherheit und agile Entwicklung? Geht das? Sicher!IT-Sicherheit und agile Entwicklung? Geht das? Sicher!
IT-Sicherheit und agile Entwicklung? Geht das? Sicher!Carsten Cordes
 

Similar to Holistische Sicherheit für Microservice Architekturen (20)

Das kleine Einmaleins der sicheren Architektur
Das kleine Einmaleins der sicheren ArchitekturDas kleine Einmaleins der sicheren Architektur
Das kleine Einmaleins der sicheren Architektur
 
Das kleine Einmaleins der sicheren Architektur @heise_devSec
Das kleine Einmaleins der sicheren Architektur @heise_devSecDas kleine Einmaleins der sicheren Architektur @heise_devSec
Das kleine Einmaleins der sicheren Architektur @heise_devSec
 
Migration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud PlattformMigration von Aftersales Systemen auf eine Cloud Plattform
Migration von Aftersales Systemen auf eine Cloud Plattform
 
Compliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-AchtCompliance und Governance in der DevOps-Acht
Compliance und Governance in der DevOps-Acht
 
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
Auf gehts in die Cloud: „Das kann doch nicht so schwer sein!“
 
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.Steinzeit war gestern! Wege der Cloud-nativen Evolution.
Steinzeit war gestern! Wege der Cloud-nativen Evolution.
 
Fraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativFraunhofer AISEC - Mit Sicherheit innovativ
Fraunhofer AISEC - Mit Sicherheit innovativ
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform Engineering
 
PROFI Cloud Lösung
PROFI Cloud LösungPROFI Cloud Lösung
PROFI Cloud Lösung
 
CWMC Insights 2020|14 - Einführung IIoT Security
CWMC Insights 2020|14 - Einführung IIoT SecurityCWMC Insights 2020|14 - Einführung IIoT Security
CWMC Insights 2020|14 - Einführung IIoT Security
 
Multi-Cloud eGov Webinar 20220322
Multi-Cloud eGov Webinar 20220322Multi-Cloud eGov Webinar 20220322
Multi-Cloud eGov Webinar 20220322
 
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
Microservice architecture applied. 14 Praxis-Tipps für die Nutzung von Micros...
 
A Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native StackA Hitchhiker's Guide to the Cloud Native Stack
A Hitchhiker's Guide to the Cloud Native Stack
 
Innovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzenInnovationen aus der Cloud ganz einfach nutzen
Innovationen aus der Cloud ganz einfach nutzen
 
Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)Per Anhalter durch den Cloud Native Stack (extended edition)
Per Anhalter durch den Cloud Native Stack (extended edition)
 
Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?Cloud Native und Java EE: Freund oder Feind?
Cloud Native und Java EE: Freund oder Feind?
 
Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?Cloud Native & Java EE: Freund oder Feind?
Cloud Native & Java EE: Freund oder Feind?
 
Oracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im EinsatzOracle Mobile Cloud Service im Einsatz
Oracle Mobile Cloud Service im Einsatz
 
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
Enterprise-level Kubernetes Security mit Open Source Tools - geht das?
 
IT-Sicherheit und agile Entwicklung? Geht das? Sicher!
IT-Sicherheit und agile Entwicklung? Geht das? Sicher!IT-Sicherheit und agile Entwicklung? Geht das? Sicher!
IT-Sicherheit und agile Entwicklung? Geht das? Sicher!
 

More from QAware GmbH

50 Shades of K8s Autoscaling #JavaLand24.pdf
50 Shades of K8s Autoscaling #JavaLand24.pdf50 Shades of K8s Autoscaling #JavaLand24.pdf
50 Shades of K8s Autoscaling #JavaLand24.pdfQAware GmbH
 
Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...
Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...
Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...QAware GmbH
 
Fully-managed Cloud-native Databases: The path to indefinite scale @ CNN Mainz
Fully-managed Cloud-native Databases: The path to indefinite scale @ CNN MainzFully-managed Cloud-native Databases: The path to indefinite scale @ CNN Mainz
Fully-managed Cloud-native Databases: The path to indefinite scale @ CNN MainzQAware GmbH
 
Down the Ivory Tower towards Agile Architecture
Down the Ivory Tower towards Agile ArchitectureDown the Ivory Tower towards Agile Architecture
Down the Ivory Tower towards Agile ArchitectureQAware GmbH
 
"Mixed" Scrum-Teams – Die richtige Mischung macht's!
"Mixed" Scrum-Teams – Die richtige Mischung macht's!"Mixed" Scrum-Teams – Die richtige Mischung macht's!
"Mixed" Scrum-Teams – Die richtige Mischung macht's!QAware GmbH
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringQAware GmbH
 
Der Tod der Testpyramide? – Frontend-Testing mit Playwright
Der Tod der Testpyramide? – Frontend-Testing mit PlaywrightDer Tod der Testpyramide? – Frontend-Testing mit Playwright
Der Tod der Testpyramide? – Frontend-Testing mit PlaywrightQAware GmbH
 
Was kommt nach den SPAs
Was kommt nach den SPAsWas kommt nach den SPAs
Was kommt nach den SPAsQAware GmbH
 
Cloud Migration mit KI: der Turbo
Cloud Migration mit KI: der Turbo Cloud Migration mit KI: der Turbo
Cloud Migration mit KI: der Turbo QAware GmbH
 
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
 Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See... Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...QAware GmbH
 
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster QAware GmbH
 
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.QAware GmbH
 
Kubernetes with Cilium in AWS - Experience Report!
Kubernetes with Cilium in AWS - Experience Report!Kubernetes with Cilium in AWS - Experience Report!
Kubernetes with Cilium in AWS - Experience Report!QAware GmbH
 
50 Shades of K8s Autoscaling
50 Shades of K8s Autoscaling50 Shades of K8s Autoscaling
50 Shades of K8s AutoscalingQAware GmbH
 
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAPKontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAPQAware GmbH
 
Service Mesh Pain & Gain. Experiences from a client project.
Service Mesh Pain & Gain. Experiences from a client project.Service Mesh Pain & Gain. Experiences from a client project.
Service Mesh Pain & Gain. Experiences from a client project.QAware GmbH
 
50 Shades of K8s Autoscaling
50 Shades of K8s Autoscaling50 Shades of K8s Autoscaling
50 Shades of K8s AutoscalingQAware GmbH
 
Blue turns green! Approaches and technologies for sustainable K8s clusters.
Blue turns green! Approaches and technologies for sustainable K8s clusters.Blue turns green! Approaches and technologies for sustainable K8s clusters.
Blue turns green! Approaches and technologies for sustainable K8s clusters.QAware GmbH
 
Per Anhalter zu Cloud Nativen API Gateways
Per Anhalter zu Cloud Nativen API GatewaysPer Anhalter zu Cloud Nativen API Gateways
Per Anhalter zu Cloud Nativen API GatewaysQAware GmbH
 
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster QAware GmbH
 

More from QAware GmbH (20)

50 Shades of K8s Autoscaling #JavaLand24.pdf
50 Shades of K8s Autoscaling #JavaLand24.pdf50 Shades of K8s Autoscaling #JavaLand24.pdf
50 Shades of K8s Autoscaling #JavaLand24.pdf
 
Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...
Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...
Make Agile Great - PM-Erfahrungen aus zwei virtuellen internationalen SAFe-Pr...
 
Fully-managed Cloud-native Databases: The path to indefinite scale @ CNN Mainz
Fully-managed Cloud-native Databases: The path to indefinite scale @ CNN MainzFully-managed Cloud-native Databases: The path to indefinite scale @ CNN Mainz
Fully-managed Cloud-native Databases: The path to indefinite scale @ CNN Mainz
 
Down the Ivory Tower towards Agile Architecture
Down the Ivory Tower towards Agile ArchitectureDown the Ivory Tower towards Agile Architecture
Down the Ivory Tower towards Agile Architecture
 
"Mixed" Scrum-Teams – Die richtige Mischung macht's!
"Mixed" Scrum-Teams – Die richtige Mischung macht's!"Mixed" Scrum-Teams – Die richtige Mischung macht's!
"Mixed" Scrum-Teams – Die richtige Mischung macht's!
 
Make Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform EngineeringMake Developers Fly: Principles for Platform Engineering
Make Developers Fly: Principles for Platform Engineering
 
Der Tod der Testpyramide? – Frontend-Testing mit Playwright
Der Tod der Testpyramide? – Frontend-Testing mit PlaywrightDer Tod der Testpyramide? – Frontend-Testing mit Playwright
Der Tod der Testpyramide? – Frontend-Testing mit Playwright
 
Was kommt nach den SPAs
Was kommt nach den SPAsWas kommt nach den SPAs
Was kommt nach den SPAs
 
Cloud Migration mit KI: der Turbo
Cloud Migration mit KI: der Turbo Cloud Migration mit KI: der Turbo
Cloud Migration mit KI: der Turbo
 
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
 Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See... Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
Migration von stark regulierten Anwendungen in die Cloud: Dem Teufel die See...
 
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
 
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
Endlich gute API Tests. Boldly Testing APIs Where No One Has Tested Before.
 
Kubernetes with Cilium in AWS - Experience Report!
Kubernetes with Cilium in AWS - Experience Report!Kubernetes with Cilium in AWS - Experience Report!
Kubernetes with Cilium in AWS - Experience Report!
 
50 Shades of K8s Autoscaling
50 Shades of K8s Autoscaling50 Shades of K8s Autoscaling
50 Shades of K8s Autoscaling
 
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAPKontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
Kontinuierliche Sicherheitstests für APIs mit Testkube und OWASP ZAP
 
Service Mesh Pain & Gain. Experiences from a client project.
Service Mesh Pain & Gain. Experiences from a client project.Service Mesh Pain & Gain. Experiences from a client project.
Service Mesh Pain & Gain. Experiences from a client project.
 
50 Shades of K8s Autoscaling
50 Shades of K8s Autoscaling50 Shades of K8s Autoscaling
50 Shades of K8s Autoscaling
 
Blue turns green! Approaches and technologies for sustainable K8s clusters.
Blue turns green! Approaches and technologies for sustainable K8s clusters.Blue turns green! Approaches and technologies for sustainable K8s clusters.
Blue turns green! Approaches and technologies for sustainable K8s clusters.
 
Per Anhalter zu Cloud Nativen API Gateways
Per Anhalter zu Cloud Nativen API GatewaysPer Anhalter zu Cloud Nativen API Gateways
Per Anhalter zu Cloud Nativen API Gateways
 
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
Aus blau wird grün! Ansätze und Technologien für nachhaltige Kubernetes-Cluster
 

Holistische Sicherheit für Microservice Architekturen

  • 1. Holistische Sicherheit für Microservice Architekturen OOP 2020 // @LeanderReimer #cloudnativenerd {{ 04.02.2020 }}
  • 2. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware #whoami 2 Mario-Leander Reimer Chief Software Architect QAware GmbH
  • 4. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Monolithische Systeme waren vergleichsweise einfach abzusichern. • Kleinere Angriffsfläche in Bezug auf die öffentlichen APIs. • Keine Verteilung. Kaum IPC. • Überschaubarer Technologie-Stack • Geringe Infrastruktur-Komplexität • Managed Infrastruktur (OS Updates, Version Upgrades, Patches) • Lange Release-Zyklen. One Team. 4 Monolithic Vintage System Users system.example.com
  • 5. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Microservice-basierte Systeme sind komplexer. Ihre Absicherung ist deutlich aufwändiger. • Starke Verteilung und zahlreiche Kommunikationskanäle • Heterogener Technologie-Stack • Hohe Infrastruktur-Komplexität mit vielen Komponenten • Neues Betriebsmodell mit mehr Verantwortung beim Entwickler • Kurze Release Zyklen. Viele Teams. 5 Service A Service B Service C Service X Service Y Service Z Users
  • 6. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Microservice-basierte Systeme müssen auf allen Ebenen und Sichten der Softwarearchitektur gesichert werden. 6 TI - ArchitekturT - ArchitekturA - Architektur Konzeptionelle Sicht Modulsicht Ausführungssicht Programmsicht Anforderungen Komponenten Schnittstellen Nachbarsysteme Anwendungsfälle Entitätenmodell Rechner Netzwerke Infrastruktur Produkte Bibliotheken Frameworks Technologien
  • 7. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Die Sicherheitsarchitektur eines Systems sichert die Architektur auf den verschiedenen Ebenen. 7 Anwendungs-Architektur Technische Architektur Sichere Anwendungs-Architektur Sichere Technische Architektur Sicherheits-Anforderungen Security Targets Externe Quellen:
 OWASP Top 10, BSI, PSA, Technische Infrastruktur Sichere Technische InfrastrukturSicherheits
 Architektur
  • 8. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Die Sicherheitsarchitektur besteht aus abgesicherten Komponenten und Kommunikationskanälen. 8 Komponente A Komponente B Kanal A-B Trust boundary
 (Abgesicherter) Kommunikationskanal Komponente Schnittstelle über einen Gatekeeper gesichert • Ein System besteht aus Komponenten. Diese sind durch Kommunikationskanäle verbunden. • Beispiele für Komponenten: Datacenter, VMs, Container, App Server, Datenbanken, Softwaremodule, Browser, … • Jede Komponente wird von jemanden bereitgestellt, der vertrauenswürdig oder nicht vertrauenswürdig ist. • Jede Komponente hat eine definierte Sicherheit (von unsicher bis sehr sicher): Wie gründlich muss der Gatekeeper sein: Vom Jedermanns-Recht bis zur Festung • Jeder Kanal hat eine definierte Sicherheit (von sehr sicher bis unsicher): Wie robust ist der Kanal und das dabei verwendete Protokoll gegenüber den typischen Angriffen?
  • 9. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Sicherheitskomponenten können Sicherheitsgruppen bilden mit harten Grenzkontrollen oder laxer innerer Sicherheit. 9 Komponente A Komponente B Komponente D Komponente C Strenge Sicherheit Schwache Sicherheit Keine Sicherheit Sicherheitsgruppe und
 Trust Boundary
  • 10. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Konzepte aus dem Domain Driven Design helfen beim Entwurf der Sicherheitsarchitektur. • Bounded Context definiert die fachlichen Systemgrenzen • Fachlicher und technischer Schnitt mit Event Storming • Anti-Corruption Layer kapselt und isoliert die Zugriffe zwischen Bounded Contexts • Value Objects: self-validated, immutable Data Types 10
  • 11. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Introducing DHARMA: Domain Hierarchy Access Regulation for Microservices Architecture • Nützliche Access Control Mechanismen für Microservices • Network-Level Controls: Segmentation, SSL/TLS, SPIFFE • Infrastructure: Network Overlays, Proxies / API Gateways, Service Meshes • Application Level Controls: API keys, OAuth 2.0, OpenID Connect, JWT • Die API Access Control Design Methodology mit DHARMA: 1. Identify Trust Domains 2. Define trust and access mechanisms 3. Determine interior and boundary endpoints 4. Select domain implementation platforms 11 https://www.ca.com/content/dam/ca/us/files/ebook/securing-microservice-apis-sustainable-and-scalable-access-control.pdf
  • 12. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware12 DMZ A Shared PaaS Reverse Proxy Reverse Proxy Namespace Bounded Context A APIGateway Reverse Proxy Users 3rd Party Apps Mobile Namespace Security Context SecurityAPIGateway Auth Token <-> JWT Auth Service 
 X Auth Service 
 Y Auth Service 
 Z Service A Service B JWKS
 Service 3 JWT JWT 5 2 2 1 4 4 1. Proprietary Authentication Token 2. Authorise and swap token to JSON Web Token 3. Propagate Token 4. Verify Token with JSON Web Key Set 5. Propagate Token 6. Like 4. Verify Token with JSON Web Key Set
  • 13. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware13 W E N S Ingress Egress API Gateways für Nord-Süd Kommunikation Service Meshes für Ost-West Kommunikation
  • 14.
  • 15. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware15 API Gateways are like the Façade Pattern in
 Cloud Native Application Design and Microservice Architectures
  • 16. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware • Traffic Management: Path, Header, Host based Routing, Path Rewrite • Security: AAA, Terminate TLS, Support for JWT and JWKS, Open ID • Quality of Service: Rate Limiting, Quota • Observability: Logging, Monitoring, Tracing, Auditing • Resiliency: Circuit Breaker, Retry, Timeouts • Protocol Translation: XML to JSON, gRPC to JSON, … • Transformation: Fan Out / Collect, Backend for Frontend, GraphQL • Rollout and Deployment: A/B Deployment, Canary Release, et.al. 16
  • 17. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Four Categories of API Gateways A. API Management Solutions: Kong, Tyk, Mulesoft, 3scale, Apigee, … B. Build Your Own API Gateway: Netflix Zuul 2, Spring Cloud Gateway, Vert.x, Ballerina, Camel, … C. Service Proxies: Envoy, Nginx, OpenResty, Traefik, … D. Cloud Native API Gateways: KrakenD, Ambassador, Gloo, Maesh, … 17
  • 18. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Container Orchestration Patterns 1. Sidecar Container: Extend container behaviour • Log Extraction / Reformatting (fluentd, logstash) • Scheduling (cron, quartz) 18 2. Ambassador Container: Proxy communication • TLS Tunnel (stunnel, ghostunnel) • Circuit Breaking (Envoy, Linkerd, Istio) • Request Monitoring (Istio, Linkerd) 3. Adapter Container: Provide a standardized interface • Monitoring (Prometheus) • Configuration (ConfigMaps, Secrets)
  • 19. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware19
  • 20. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Istio Service Mesh Architecture and Components 20
  • 21. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Service Mesh für Arme auf Basis Envoy 21
  • 22. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware22
  • 23. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware The 4C’s of Cloud Native Security 23 Cloud Cluster Container Code https://kubernetes.io/docs/concepts/security/overview/#the-4c-s-of-cloud-native-security
  • 24. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Code • Apply Defensive Programming Practices: Educate and Read • 3rd Party Dependency Security: Trusted Repositories (Nexus, Artifactory), Build Tool Integration (OWASP Plugins) • Static Code Analysis: Google Error Prone, Sonar, et.al. • Dynamic Probing Attacks als Teil der CI/CD Pipeline: Headless OWASP Zed Attack Proxy, Crashtest Security Suite • Zero Trust Mindset: Access over TLS only, limit port ranges 24
  • 25. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Container • Disallow Privileged Users. • Build minimal images. Consider Distroless. • Use Trusted Registries and Trusted Images. • Container Vulnerability Scanning und OS Dependency Security als Teil der CI/CD Pipeline mit Tools wie Claire • Image Signing and Enforcement: CNCF Projects (TUF and Notary) are useful tools for signing container images and maintaining a system of trust, IBM’s Portieris for enforcement. 25 # Start by building the application. FROM golang:1.12 as build WORKDIR /go/src/app ADD . /go/src/app RUN go get -d -v ./... RUN go build -o /go/bin/app # Now copy it into our base image. FROM gcr.io/distroless/base COPY --from=build /go/bin/app / CMD ["/app"]
  • 26. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Cluster • Sowohl die Komponenten des Clusters selbst auch die Applications-Komponenten müssen gesichert werden. Empfehlung: Nutze einen Managed Cluster as a Service Dienst. • Application secrets management (and encrypting them in etcd at rest) 
 https://kubernetes.io/docs/concepts/configuration/secret/ • Pod Security Policies: 
 https://kubernetes.io/docs/concepts/policy/pod-security-policy/ • Quality of Service (and Cluster resource management) 
 https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/ • Network Policies: 
 https://kubernetes.io/docs/concepts/services-networking/network-policies/ • TLS For Kubernetes Ingress:
 https://kubernetes.io/docs/concepts/services-networking/ingress/#tls 26
  • 27. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Cloud • Beachte die Cloud Provider Security Guidelines! 27 IaaS Provider Link Alibaba Cloud https://www.alibabacloud.com/trust-center Amazon Web Services https://aws.amazon.com/security/ Google Cloud Platform https://cloud.google.com/security/ IBM Cloud https://www.ibm.com/cloud/security Microsoft Azure https://docs.microsoft.com/en-us/azure/security/azure-security VMWare VSphere https://www.vmware.com/security/hardening-guides.html
  • 28. // OOP 2020 // Holistische Sicherheit für Microservice Architekturen // @LeanderReimer #cloudnativenerd #qaware Holistische Sicherheit für Microservice-basierte Systeme betrifft alle Ebenen vom Entwurf bis zum Betrieb. 28 Infrastructure Certificates Tokens Passwords Security Testing DAST + SAST Secure Components Domain Driven Design Security Patterns Sicherheitsanforderungen Schutzbedarfsanalyse Angreifer-Analyse OWASP Top 10 Defensive Programming Dependencies Package Signing Container Security
  • 29. Mario-Leander Reimer Chief Software Architect, QAware GmbH mario-leander.reimer@qaware.de https://www.qaware.de https://speakerdeck.com/lreimer/ &