ra2 studio - stock.adobe.com
AaaS und IDaaS: Identitätsmanagement in der Cloud
Viele Firmen denken über ein Outsourcing ihrer IAM-Lösungen an einen externen Provider nach. Dabei gilt es einige Punkte wie die Unterstützung von Legacy-Anwendungen zu beachten.
Praktisch jede Cloud-Anwendung erfordert heutzutage, dass sich die Anwender vor der Nutzung entweder registrieren oder anderweitig authentifizieren. Dadurch können die einzelnen Nutzer belegen, dass sie nicht mit einem anderen Anwender identisch sind.
Es gibt gute Gründe für dieses Vorgehen. Damit sind die Anwender in der Lage, den aktuellen Stand ihrer Arbeit in einer Applikation für später zu speichern. Ein weiterer Grund liegt darin, dass HTTP ein sogenanntes zustandsloses Protokoll ist. Das bedeutet, dass jede darauf aufsetzende Webapplikation einen Mechanismus benötigt, um ihren aktuellen Zustand zu erhalten. Nur so kann sie sicherstellen, dass die Sessions mehrerer Nutzer voneinander getrennt bleiben, auch wenn sie auf dieselbe Web-Anwendung zugreifen.
Ein modernes Identitätsmanagement in der Cloud hat zwei wesentliche Voraussetzungen, die es für Sicherheitsprofis interessant macht. Die erste ist, dass jede Anwendung – außer in speziellen Fällen – in der Lage sein muss, Identitäten in der Cloud managen zu können. Jede Applikation muss also genau wissen, wer ihre Nutzer sind. Dazu muss sie die Anwender autorisieren, authentifizieren und sicher voneinander unterscheiden können. Die Konsequenzen einer mangelhaften Umsetzung des Identitätsmanagements in der Cloud können fatal sein. Deswegen erfordert es besondere Sorgfalt.
AaaS und IDaaS: Management von Identitäten in der Cloud
Verwaltung von Identitäten in der Cloud zu erleichtern. Auf sie treffen dieselben Voraussetzungen zu wie für andere Aspekte der Verwaltung von Rechenleistung und Anwendungen, egal ob es sich um IaaS (Infrastructure as a Service) oder SaaS (Software as a Service) handelt.
Gleichgültig, ob sie nun Identity as a Service (IDaaS) oder Authentication as a Service (AaaS) genannt wird, die Idee dahinter ist mehr oder weniger dieselbe: Ein externer Dienstleister kümmert sich um die Authentifizierung und Registrierung der Anwender sowie um die Verwaltung ihrer Daten, wenn sie eine bestimmte Web-Applikation nutzen wollen.
Um das Management in der Cloud zu erleichtern, nutzen diese Dienste in der Regel gut dokumentierte und analysierte Standards. Beispiele für diese Standards sind SAML (Security Assertion Markup Language) sowie OAuth (Open Authorization). Sie ermöglichen es den Unternehmen, die Authentifizierung komplett dem Provider zu überlassen, statt sich selbst darum kümmern zu müssen.
SAML ist ein von der OASIS (Organization for the Advancement of Structured Information Standards) entwickelter Standard. Er dient zur Verarbeitung von sicherheitsrelevanten Annahmen. Dahinter verbirgt sich eine auf XML (Extended Markup Language) basierende Datenstruktur, die Informationen über den aktuellen Status der Authentifizierung eines Nutzers enthält.
Ursprünglich wurde SAML für Anwendungen wie Single Sign-on (SSO) entwickelt. SAML ermöglicht es einem Teilnehmer gegenüber einem anderen Teilnehmer (zum Beispiel einem Service-Provider), zu versichern, dass eine Person oder Entität wie der Nutzer selbst bereits erfolgreich authentifiziert wurde. Der Dienstleister kann diese Information verarbeiten und sich dabei darauf verlassen, dass der Nutzer schon erfolgreich authentifiziert wurde. Dadurch muss er diesen Vorgang nicht selbst wiederholen.
OAuth ist ein offener Standard, um den sich die Internet Engineering Task Force (IETF) kümmert. Er ermöglicht den Austausch von Autorisierungsdaten. Meist werden dafür REST APIs (Application Programming Interfaces) verwendet. OAuth erstellt Zugriffs-Token, die von einem Teilnehmer zu einem anderen weitergegeben werden können. Für den Austausch der Daten wird meist HTTP Secure (HTTPS) genutzt. So können auch zwischen zwei eigentlich zustandslosen Komponenten die Daten über ihren Autorisierungsstatus abgeglichen werden.
Was sind die Vorteile des Identitätsmanagement in der Cloud?
Das Übertragen des Account-Managements sowie der Autorisierung an einen Service-Provider bedeutet für ein Unternehmen, dass es sich in seinen Anwendungen nicht mehr länger um diese Aspekte kümmern muss. Aus Sicherheitssicht hat das einige Vorteile. So befreit es die Firmen vom Umgang mit möglicherweise kompromittierten Passwörtern.
Außerdem wird es dadurch leichter, auf eine moderne Multifaktor-Authentifizierung (MFA) umzustellen. Des Weiteren ist es für viele Verantwortliche beruhigend, wenn sie sich darauf verlassen können, dass sich erfahrene Spezialisten um die Verwaltung der Identitäten kümmern.
Darüber hinaus gibt es weitere Vorteile bei der Entwicklung von Anwendungen, wenn das Identitätsmanagement in die Cloud ausgelagert wird. So müssen die Entwickler dadurch weniger Code erstellen. Das verschafft den Programmierern nicht nur mehr Zeit, um sich etwa auf aktuelle Marktsituationen schneller einzustellen. Sie haben auch mehr Kapazitäten für die Entwicklung neuer Erweiterungen für ihre Anwendungen und Dienste.
Abhängig von der jeweiligen Situation kann es auch für die Nutzer bequemer sein, wenn das Identitätsmanagement an einen externen Dienstleister übertragen wird. Wenn sich ein Unternehmen zum Beispiel für einen Identity-Provider entscheidet, mit dem bereits eine Zusammenarbeit in anderen Bereichen bestand, können die Nutzer ihre bereits vorhandenen Konten oft weiterhin zum Anmelden verwenden.
Der größte Nachteil ist aber natürlich der potentielle Single Point of Failure (SPoF): Wenn die Systeme des Service-Providers versagen oder er aus anderen Gründen nicht erreichbar ist, dann kann sich niemand mehr bei den genutzten Anwendungen einloggen.
Was ist beim Umstieg auf Identitätsmanagement in der Cloud zu beachten?
Die Vorteile eines Outsourcings der Identitätsverwaltung in die Cloud über entweder AaaS oder IDaaS können sowohl für Entwickler als auch für Sicherheitsexperten sehr überzeugend sein. Dann ändert sich die Fragestellung schnell von einem Ob zu einem Wie. Wenn Sie sich für einen Einsatz von AaaS oder IDaaS entschieden haben, gibt es jedoch eine Reihe von Aspekten, die Sie beachten sollten.
So ist es besonders wichtig, genau zu überlegen, in welchem Zusammenhang AaaS oder IDaaS eingesetzt werden sollen. Die Verantwortlichen sollten prüfen, ob es sofort oder in Zukunft nötig sein wird, auch die noch vorhandenen Legacy-Anwendungen einzubinden? Außerdem geht es um Fragen zu den bereits existierenden Nutzer-Accounts. Befinden sie sich in einem Active Directory (AD)? Wie sieht es mit einem möglicherweise schon eingesetzten Single-Sign-on-System aus? Diese Empfehlungen mögen als selbstverständlich erscheinen.
Immer wieder ist jedoch zu beobachten, dass viele Unternehmen sich nicht rechtzeitig um solche Spezialfälle gekümmert haben. Das hat dann dazu geführt, dass sie verschiedene Produkte kombinieren oder sogar im schlimmsten Fall mehrere redundante Lösungen erwerben mussten, die über ähnliche oder identische Funktionen verfügen. Beim Auslagern des Identitätsmanagements zu einem Dienstleister ist es zudem hilfreich, wenn er eine breite Palette an Integrationsmöglichkeiten wie SAML, OAuth oder OpenID Connect unterstützt. Das gilt vor allem für native Desktop-Anwendungen oder für die Middleware in vielen Unternehmen.
Im nächsten Schritt sollten Sie sich mit den logistischen Herausforderungen beschäftigen, die eine Implementierung in der Cloud oder On-Premises mit sich bringen. Wenn ein Unternehmen zum Beispiel auf eine auch für externe Zugriffe freigegebene Anwendung angewiesen ist, dann hat eine Cloud-Implementierung eindeutige Vorteile gegenüber einer lokalen Umsetzung. Selbst wenn es bereits ein internes Verzeichnis für Nutzer oder Anwendungen gibt, kann es durch den zunehmenden Bedarf an externen und nicht innerhalb der eigenen Infrastruktur gehosteten Anwendungen nötig sein, zu einer Cloud-Lösung zu wechseln.
Zuletzt sollten sich Unternehmen auf die Fähigkeiten der ausgewählten Lösungen konzentrieren, mit denen die gewünschten Autorisierungsmethoden unterstützt und mit denen die bereits vorhandenen Nutzerverzeichnisse integriert werden können.
So kann es etwa sinnvoll sein, einen zweiten oder gar dritten Faktor wie Token oder biometrische Maßnahmen bei der Authentifizierung einzuführen. Welche sich am besten eignen, hängt von der jeweiligen Situation ab. Prüfen Sie, wo sich die zu verwendenden Account-Daten derzeit befinden und beziehen Sie alle Herausforderungen mit in die Überlegungen mit ein, die sich durch den Wechsel ergeben. Ein auf Basis von Active Directory standardisiertes System ist meist erheblich leichter zu integrieren als eine eigens für eine spezielle Anwendung entwickelte Nutzerdatenbank.
Wie immer sollten Sie bereits im Vorfeld alle wesentlichen Informationen über Ihre Anforderungen, Planungsvorgaben und bereits bekannten Aspekte bei der Implementierung sammeln, bevor Sie mit einem oder mehreren Anbietern Kontakt aufnehmen. Auf diese Weise können Sie gerade auf lange Frist gesehen wertvolle Zeit und Ressourcen sparen.