Copyright 2020 - legendlime - Thomas Kautenburger, Software Design & Entwicklung

 

Die verteilte Architektur von Microservice-Anwendungen stellt besondere Anforderungen an die Sicherheit in Bezug auf Authentisierung und Autorisierung von Anwendern und Diensten, an sichere Kommunikation und erfordert ein zentrales und übergreifendes Sicherheitsmanagement.

Sicherheitsdienste implementieren die Methoden zur Authentifizierung der Benutzer, die Microservices aufrufen, um sicherzustellen, dass der Benutzer derjenige ist, für den er sich ausgibt, und um festzustellen, ob er berechtigt ist, die vom Microservice angeforderte Aktion auszuführen. Um Authentifizierungs- und Autorisierungskontrollen zu implementieren, wird häufig der OAuth2-Standard (Open Authentication) genutzt, um die Dienste zu sichern. Das Hauptziel von OAuth2 besteht darin, dass der Benutzer von jedem Dienst authentifiziert werden kann, wenn mehrere Dienste aufgerufen werden, um die Anforderung eines Benutzers zu erfüllen, ohne dass der Benutzer seine Anmeldeinformationen jedem Dienst vorlegen muss, der seine Anforderung verarbeitet.

Die Bereitstellung eines zentralen Identity & Access Management Service für die Authentifizierung und Autorisierung von Clients (Benutzer, die Anwendungsdienste aufrufen, und Anwendungsdienste, die andere nachgeschaltete Anwendungsdienste aufrufen) ist ein zentraler Baustein in jeder Sicherheitsarchitektur. 

Teil einer guten Security-Strategie sollten Verschlüsselungsmaßnahmen wie die HTTPS-Transportsicherheit zum Schutz von Daten während des Transports umfassen. HTTPS-verschlüsselte Verbindungen mit zertifikatsbasierter Sicherheit (z.B. SSL/TLS) werden besonders kritisch, wenn Daten extern vom Netzwerk übertragen werden. Für ein effektives Management der notwendigen Schlüssel und Zertifikate ist ein zentrales und automatisiertes Management von Schlüsselmaterial notwendig.

Verwaltung von asymmetrischem Schlüsselmaterial (private Schlüssel und öffentliche digitale Zertifikate) und sichere und automatisierte Bereitstellung des Schlüsselmaterials für die Anwendungs- und Infrastrukturdienste. Das Schlüsselmaterial wird von diesen Diensten benötigt, um TLS-gesicherte Kommunikationskanäle für andere Dienste und für Clientanwendungen bereitzustellen. Die Schlüsselverwaltung umfasst die Schlüsselbereitstellung, die Schlüsselrotation und den Schlüsselentzug (Revokation).

Die Verwaltung und sichere Bereitstellung geheimer Daten, wie Benutzerkennungen und System-Kennwörter für die Anwendungsdienste. Diese Anmeldeinformationen werden von den Anwendungsdiensten benötigt, um auf Systemdienste zuzugreifen, z.B. Datenbanken, Message Broker usw.

Wir unterstützen Sie gerne bei der Entwicklung und Umsetzung Ihrer Microservice Security-Strategie und helfen Ihnen Software-Sicherheit nach neuesten "Defense-in-Depth" Methoden zu implementieren.