Integration von Cloud-Services

Cloud trifft interne Security-Infrastruktur

20. Februar 2012, 7:00 Uhr | Michael Frohn/wg, Partner bei der Advanced Cloud Group

Bei der Einführung von Cloud-Services stellt sich die Frage, wie sich die Nutzung dieser Dienste mit der Sicherheitsarchitektur der bestehenden IT-Landschaft verknüpfen lässt. Denn die Cloud-Services namhafter Service-Provider bieten zwar ein hohes Maß an Sicherheit, Fragen der Authentifizierung und der Benutzerverwaltung bleiben jedoch im Raum stehen. Hier sind Integrationswerkzeuge gefordert.

Richtig ausgewählt, kann eine moderne SaaS- oder PaaS-Lösung (Software as a Service, Platform as a Service) die Erstellung und Pflege von Unternehmensanwendungen wie Urlaubsgenehmigungen, Genehmigungsprozesse, gemeinsame Kalender bis hin zu Prozessen wie Angebotserstellung etc. wesentlich vereinfachen. Notwendig dafür sind aber Eigenschaften wie eine mandantenfähige Architektur (ein gemeinsamer Quellcode, notwendig für reibungslose Updates für viele Kunden), offene und standardbasierte Schnittstellen (Application Programming Interfaces, APIs), ein hohes Maß an Sicherheit (technische Funktionen und unabhängige Prüfungszertifikate) sowie die Möglichkeit der Integration in die Unternehmens-IT und Security-Infrastruktur.

Große Bedeutung kommt folgenden Security-Aspekten zu:

Schutz vor Datenverlust (Hochverfügbarkeit, Backups, Disaster Recovery),

Schutz vor Diebstahl der Daten sowie

Schutz vor Manipulation und Veränderung von Daten.

Der erste Punkt betrifft das Kerngeschäft des Anbieters und sollte natürlich sorgfältig geprüft und durch entsprechende internationale und nationale (zum Beispiel TÜV-) Zertifizierung validiert sein. Wichtig ist auch, ob die Verfügbarkeit solcher Zertifizierungen transparent kommuniziert wird. Ein Blick in die Referenzliste sicherheitskritischer Unternehmen gibt einen guten Hinweis, mit welchen Anbietern man sich näher beschäftigen sollte.

Der Schutz vor Datendiebstahl besteht im Wesentlichen aus entsprechenden Maßnahmen, die genutzte PaaS-Platform mit der darunter liegenden Datenbank abzusichern. Dabei darf man neben den Angriffen krimineller Hacker nicht vernachlässigen, dass auch (Ex-)Mitarbeiter in Versuchung geraten könnten, Kundendaten "mitzunehmen". Ein systembedingter Vorteil von Public Cloud Services ist dabei, dass die Daten nicht auf Notebooks, Tabets, Memory Sticks oder CDs gespeichert werden - denn dies ist der einfachste Weg, die Daten auf Geschäftsreisen an einen unbekannten Empfänger zu verlieren. Im Idealfall lassen sich dank der Berechtigungskonzepte der gewählten Cloud-Plattform Lese?, Änderungs- und Löschrechte granular einstellbar. Unabdingbar ist die Möglichkeit, diese Rechte bis auf Feldebene zu differenzieren, um zum Beispiel die Veränderung von Finanzdaten zu verhindern, während der Außendienst kundenrelevante Daten ergänzen kann.

Benutzerverwaltung

Wie in der herkömmlichen IT, so spielen auch bei der Nutzung von Cloud-Services Authentifizierung und Authorisierung eine entscheidene Rolle bei der Gewährleistung eines hohen Sicherheitsstandards. In fast allen Unternehmen ist ein entsprechendes System zur Authentifizierung etabliert, zum Beispiel über ein Corporate VPN in Verbindung mit einer zentralen Benutzerverwaltung via LDAP oder Active Directory. Cloud-Anwendungen wiederum werden in der Regel durch Benutzernamen und Password geschützt und beinhalten eine eigene Benutzerverwaltung.

Genau hier beginnt die Problematik: Beim Ausscheiden eines Mitarbeiters sperrt der Administrator das Unternehmensnetz und den Zugriff auf E?Mail etc. termingerecht über die zentrale Benutzerverwaltung. Wenn jedoch die Deaktivierung des Anwenders bei Cloud-Anwendungen nur über Prozesse und Arbeitsanweisungen realisiert ist, können hier schnell Sicherheitslücken entstehen. Das Ziel muss also eine integrierte Authentifizierungslösung für die Cloud-Anwendungen sein. Dabei bietet sich der Einsatz einer neuen oder die Integration in eine bestehende Zwei-Faktor-Authentifizierung mit Single-Sign-on-Lösung an.

Man unterscheidet dabei zwei grundsätzliche Ansätze: Delegated Authentication und Federated Authentication. Beim Ansatz der Delegated Authentification wird ein Login-Request bei einer Cloud-Anwendung wie zum Beispiel Salesforce.com an eine bestehende Instanz (LDAP, Active Directory oder OpenID) "delegiert?, also weitergeleitet. Als Antwort kommt dann "True? oder "False? zurück, was entscheidet, ob der Anwender die Applikation aufrufen darf. Diese Methode hat allerdings Nachteile: Zum einen muss die Authentifizierungsinstanz der Unternehmens-IT aus dem Web erreichbar sein, also zumindest einen Web-Service in der DMZ (Demilitarized Zone) zur Verfügung stellen. Zum anderen werden bei dieser Methode die Credentials, also Benutzername und Passwort des Anwenders, über das Internet übertragen. Es versteht sich von selbst, dass dies nur SSL-verschlüsselt erfolgen darf, dennoch verbieten einige Unternehmens-Sicherheitsrichtlinien dieses Vorgehen grundsätzlich.

Federated Authentication

Wenn die Sicherheit einer Delegated Authentication nicht ausreicht, so besteht mit der Federated Authentication eine erweiterte Möglichkeit. Diese Methode baut auf dem Standard SAML (Security Assertion Markup Language) auf und verwendet XML-Verschlüsselung, nur kurzzeitig gültige Anfragen und digitale Signaturen. Bei der Verwendung dieser Methode sollte ein Unternehmen auf die Unterstützung der SAML Version 2 achten, da diese wesentliche Verbesserungen der Sicherheitsfunktionen umfasst. So lässt sich der Login-Prozess bei dieser Version auch direkt mit der Cloud-Anwendung starten (Service Provider Initiated Login, siehe Bild auf Seite 34).

Bei einigen Softwarelösungen hat man teilweise immer noch Schwierigkeiten, für den Export beim Systemwechsel auf die Datenbank oder die Daten zuzugreifen. Ob dies problemlos möglich ist, sollte ein Unternehmen generell bei neuen Anwendungen prüfen, umso mehr, wenn von nun an ein Cloud-Service-Provider die Daten verwalten soll. Dabei haben sich Web-Services-Schnittstellen (XML, SOAP, REST etc.) als standardisierte Zugriffsmöglichkeiten für Werkzeuge und Anwendungen herauskristallisiert. So bieten zum Beispiel Googles App Engine oder die Force.com-Plattform von Salesforce eine solche Zugriffsmöglichkeit. Da die Plattform eine entscheidende Rolle bei der IT-Strategie spielt, geben sich die Hersteller hier besondere Mühe - so ist eine Unterstützung gängiger Programmiersprachen wie PHP, Java, Dotnet, Ruby etc.) und Entwicklungsumgebungen (Eclipse etc.) sehr angenehm, wenn die Cloud-Applikation auf Daten unternehmensinterner Anwendungen zugreifen soll. In der Praxis erweist sich die Möglichkeit, per Programmier- und Datenbankebene auf die Daten zugreifen zu können, als wichtige Option, um im Notfall völlig flexibel zu sein. Eine bevorzugte Wahl ist dabei allerdings der Zugriff über Integrationswerkzeuge.

Auf jeden Fall ist auf eine vollständige und hochwertige Implementierung der Sicherheitsfunktionen auch auf dieser Ebene zu achten - selbst bei großen, weit verbreiteten ERP-Systemen findet man Situtationen vor, in der die Sicherheit auf Anwendungsebene realisiert ist. Ein professionelles Berechtigungskonzept greift aber nach den gleichen, gegebenenfalls in einem zentralen System hinterlegten Regeln, auch wenn der Zugriff direkt auf die Datenbank erfolgt.

Integration in die Unternehmens-IT

Mit einer standardbasierten Schnittstelle kann ein Unternehmen von bestehenden internen Anwendungen auf die Daten einer Cloud-Plattform oder -Anwendung zugreifen - verbunden allerdings mit den Nachteilen, die Software der Schnittstelle pflegen zu müssen, falls sich eines der beiden Systeme ändert, und vom aktuellen Wissen einiger Personen abhängig zu sein.

Bei bestehenden Anwendungen stehen häufig die bei Cloud-Lösungen und modernen Web-Anwendungen anzutreffenden Web-Services-Schnittstellen gar nicht zur Verfügung. Dies kann unter anderem an den älteren Legacy- oder Mainframe-Systemen liegen, ist aber auch bei Anwendungen anzutreffen, die mit modernen Programmiersprachen erstellt sind. Denn nicht immer bedeutet der Einsatz einer modernen Programmiersprache wie Java, dass auch eine entsprechende Softwarearchitektur implementiert ist, um Anwendungen systemübergreifend zu verbinden.

Integrationswerkzeuge

Besser als die individuelle Programmierung ist es daher, Integrationswerkzeuge zu nutzen. Solche Integrationswerkzeuge verfügen bereits über fertige, als Produkt gepflegte Schnittstellen zu allen relevanten Systemen. Das Mapping der Felder, gegebenenfalls mit Transformationen und Zusammenführung aus verschiedenen Tabellen, erfolgt dabei in der Regel über eine grafische Benutzerschnittstelle. Die Dokumentation lässt sich dann ebenfalls aus dem System generieren, Anpassungen können geschulte Mitarbeiter oder ein Dienstleister schnell und einfach durchführen.

Neben der einfachen, sicheren und vom Hersteller zertifizierten Schnittstelle bieten sich hier auch Möglichkeiten, die Konsistenz der Daten über Transaktionskontrolle und Workflows sicherzustellen. Bei Bedarf lassen sich somit auch ungewünschte Änderungen der Daten überwachen, um die Datenkonsistenz zu garantieren.

Fazit

Cloud-Anwendungen stehen heute mit sehr guter Verfügbarkeit und sehr hohen Sicherheitsstandards zur Verfügung. Entscheidend für die Sicherheit des Gesamtsystems aus Cloud-Anwendungen und der Unternehmens-IT ist aber die Integration der Sicherheitssyteme. IT-Architekten sollten sich frühzeitig Gedanken über die Möglichkeiten und Strategien zur Anbindung verschiedener Cloud-Anwendungen machen und dabei eine Strategie entwickeln, welche Cloud-Plattform unterstützt werden soll.

Mittels Federated Authentication können Identity-Provider oder aber Cloud-Services selbst die Authentifizierung eines Benutzers anstoßen. Bild: Salesforce
LANline.

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Hitachi Data Systems

Matchmaker+