Ziehen Sie diese acht Punkte in Betracht, um zu entscheiden, ob Sie Open-Source-Code sicher in Ihren Identitätsmanagementprojekten verwenden können. [...]
Der Einsatz von Open Source im Unternehmen floriert, weil immer mehr Organisationen versuchen, die Zeit bis zur Implementierung zu verkürzen und damit hoffentlich auch die Kosten zu senken. In einem Bericht von RedHat aus dem Jahr 2019 zum Thema „The State of Enterprise Open Source“ heißt es, dass 95% der Befragten Open Source für „strategisch wichtig“ hielten.
Betrachtet man die Einsatzmöglichkeiten von Open Source in einer Unternehmensumgebung, so erscheint Identitätsmanagement nicht immer als seine natürliche Heimat. Das mag daran liegen, dass identitätsbezogene Dienste wahrscheinlich zu den am kompliziertesten zu entwerfenden und zu erstellenden Systemen gehören. Kann Open Source in einem identitätsbezogenen Kontext sinnvoll eingesetzt werden und sowohl Sicherheit als auch Benutzerfreundlichkeit gewährleisten?
8 Überlegungen bei der Auswahl von Open Source für Identitätsmanagement-Projekte
Überlegungen zur Nutzung von Open Source führen oft zu Angst, Unsicherheit und Zweifel (Fear, Uncertainty and Doubility, FUD). Dies geschieht nicht ohne Grund. Die Equifax-Datenpanne von 2018 ist ein gutes Beispiel dafür, warum FUD bei der Nutzung von Open Source beständig bleibt. Bei dem Vorfall griffen Cyberkriminelle mit Brute-Force-Angriffen die Open-Source-Plattform Magento an.
Es gibt sehr gute Gründe für den Einsatz von Open Source. Die Entscheidung dafür bedeutet, dass jemand anderes die Vorarbeit geleistet hat, damit Ihre Entwickler es nicht tun müssen. Theoretisch haben sich mehrere Personen (die Open-Source Community) den Code angesehen und ihn überprüft. Das mag zwar bedeuten, dass der Code die Unit-Tests bestanden hat, aber es ist keineswegs dasselbe wie funktionale Tests. Das ist der springende Punkt. Identitätsorientierte Services stellen häufig multifunktionale Systeme dar. Das funktionale Testen dieser Systeme, die unzähligen Benutzerwege und Altpfade können den Code in Windungen und Wendungen zerlegen, die zu Exploits führen.
Open-Source-Code kann einen guten Ausgangspunkt für bestimmte Funktionen innerhalb eines größeren Identitätsmanagement-Ökosystems darstellen, während Ihr Unternehmen die Kontrolle über die endgültige Anwendung behält.
Bevor Sie sich auf ein von Open Source geleitetes Identitätsmanagement-Projekt einlassen, sollten Sie mehrere Überlegungen anstellen. Erstens, und vielleicht am wichtigsten: Ist Ihr Software Developement Life Cycle (SDLC) auf dem neuesten Stand? Nur weil Sie Open-Source-Code verwenden, bedeutet das nicht, dass Sie von den üblichen SDLC-Prozessen ausgenommen sind. Open Source ist kein vollwertiger Übergang zu einer sofort einsatzbereiten Anwendung. Es erfordert den gleichen Test- und Wartungsaufwand wie jedes extern oder intern entwickelte System. Zu den Bereichen, die in Betracht gezogen werden sollten, gehören:
1. Sicherheit und Bloat
Open-Source-Software ist anfällig für Code-Bloat. Sobald dies der Fall ist, kann es schwierig sein, die Sicherheit zu kontrollieren, weil ein „Bloatware-Effekt“ einsetzt. Bei Bloatware wird den Code-Bibliotheken zunehmend Funktionalität beigefügt, was zu größeren Schwierigkeiten bei der Analyse der Software führt. Wenn der Code aufgebläht ist, wird es auch leichter, Malware zu verstecken. Ein aktuelles Beispiel ist die Octopus-Scanner-Malware, die Forscher in 26 GitHub-Quellcode-Repositorys gefunden haben.
Open-Source-Bibliotheken, insbesondere diejenigen im Identitätsbereich, sind perfekte Ziele für Malware. Die Repositorys sind so eingestellt, dass sie immer die neueste Version des Open-Source-Codes aufnehmen (ein bewährtes Verfahren, um sicherzustellen, dass Patches integriert werden). Wenn jemand Malware einschleust, wie im Fall von Octopus Scanner, wird diese Malware in das Update integriert. Bevor Sie sie bemerken, ist die Malware in Ihrem Produkt und der Rest wird zu einer schmerzlichen Geschichte.
Ein Mangel an Kontrolle über den Code kann auch zu vermehrten Schwachstellen im endgültigen System führen. Das Ganze erfordert eine sorgfältige Analyse und Prüfung. Dies kann den zeitsparenden Aspekt der Verwendung von Open Source aushebeln. Wenn der Open-Source-Code refaktorisiert wird, kann er zudem seine Anwendung innerhalb eines bestimmten Systems gefährden.
2. Skalierbarkeit
Identitätsmanagement-Dienste, insbesondere solche, die für Verbraucher entwickelt wurden, erfordern oft eine hohe Skalierbarkeit. Wenn Sie sich für ein Open-Source-Projekt entscheiden, muss die Skalierbarkeit ganz oben auf der Liste Ihrer Überlegungen stehen.
3. Interoperabilität
Viele Identitätsmanagement-Projekte bestehen aus mehreren beweglichen Teilen. Sie verwenden häufig Komponenten von Drittanbietern, um wichtige Funktionen hinzuzufügen. Beispielsweise kann ein Consumer Identity System eine Credit Reference Agency (CRA) verwenden, um Benutzerattribute zu überprüfen. Es ist unwahrscheinlich, dass Open Source die Fähigkeit besitzt, mit den Drittanbietern Ihrer Wahl zusammenzuarbeiten, was Sie zwingen würde, den Open-Source-Code zu erweitern.
4. Flexibilität
Wie einfach ist es für einen Identitätsmanagement Service, der auf Open Source basiert, sich auf verschiedene Datenbank-Speicher auszudehnen, verschiedene Attribute einzubauen, verschiedene Autorisierungs- und Authentifizierungsoptionen zu verwenden, Protokolle zu übersetzen usw.? Werden Sie darauf warten müssen, dass die Open-Source-Gemeinschaft Unterstützung für neue Standards wie z.B. OIDC CIBA hinzufügt?
5. Zukunftsfähigkeit
Können Sie die Funktionsweise modifizieren? Ist es einfach, die Funktionalität zu erweitern und zu ändern, wenn sich die Anforderungen ändern? Identitätsmanagement Services sind ein ständiges Anliegen. Die Kundenerwartungen ändern sich mit der Zeit, aber der zugrunde liegende Service muss bestehen bleiben. Wenn Sie alle Ihre Anstrengungen darauf richten, eine bestimmte Open-Source-Bibliothek zu nutzen, kann es schwierig sein, zu einer besseren und verbesserten Bibliothek mit ähnlicher Funktionalität zu wechseln: Möglicherweise erhalten Sie am Ende eine Open-Source-Version von Vendor Lock-in.
6. Support und Wartung
Viele Open-Source-Lösungen werden mit zusätzlichen Support-Paketen geliefert. In gewisser Weise mag dies den Einsatz von Open Source zu negieren scheinen. Es kann außerdem zu Problemen führen, wenn Ihr internes Team den Code auf Wegen entwickelt, die sich außerhalb des Wissens oder des Aufgabenbereichs des Support-Pakets befinden. In ähnlicher Weise kann auch die Wartung ein Problem darstellen.
Identitätsmanagement-Dienste befinden sich an der Schnittstelle der digitalen Interaktionen und müssen mit den sich ständig ändernden Gegebenheiten der Sicherheitslandschaft Schritt halten. Wenn neue Exploits auftauchen, müssen Identitätsdienste in der Lage sein, das Systemverhalten zu ändern, das einfache Patchen veralteter Software zu ermöglichen und neue Fähigkeiten zu bestehenden Systemen hinzuzufügen, um neue Lücken zu schließen.
7. Fachwissen zur Identität
Identitätsmanagement Services erfordern multidisziplinäres Fachwissen. Dazu gehören UI/UX-Kenntnisse, ein tiefes Verständnis von Datenschutz und Einhaltung von Vorschriften sowie ein breites Spektrum an Sicherheitsexpertise. Die Verwendung von Open-Source-Code ist nur ein Aspekt der Schaffung eines identitätsbezogenen Dienstes. Ein gut konzipiertes und entwickeltes Identitätssystem erfordert einen 360-Grad-Ansatz, der die am besten geeigneten Plattformen für eine breite demografische Zielgruppe schafft. Der Code muss diesem Ansatz folgen, nicht ihn diktieren. Mit Code zu beginnen ist der falsche Weg. Wenn der Code jedoch eine Basis bildet, von der aus man weiterarbeiten kann, dann kann dadurch eine Menge Aufwand vermieden werden.
8. Abhängigkeiten
Manchmal bestehen bei Open-Source-Bibliotheken Abhängigkeiten. Das heißt, wenn Sie sie installieren, installieren sie andere zugehörige Bibliotheken. Wenn dies geschieht, erhalten Sie am Ende viele Open-Source-Bibliotheken, von denen einige nicht benötigt werden. Dies kann ein Problem darstellen, da manche der Bibliotheken veraltet sein können. In diesem Fall wird die Open-Source-Community auf Alternativen hinweisen. Dies kann einen Umzug zu einer neuen Reihe von Bibliotheken bedeuten. Alternativ dazu könnten Sie am Ende mit der veralteten Bibliothek leben, die unter Umständen Schwachstellen enthält, die vielleicht nie behoben werden.
Nutzen Sie Open Source mit Bedacht
Identitätsmanagement-Dienste sind ihrem Wesen nach sehr dynamisch. Häufig müssen Identitätsdienste dem Diktat des e-Commerce und den Kundenerwartungen folgen. Die Sicherheitslandschaft ist so beschaffen, dass Identitätsmanagement-Systeme und Benutzerattribute ein Angriffsziel sind. Das bedeutet, dass das System flexibel genug sein muss, um mit Veränderungen umgehen zu können.
Wenn Sie sich für den Einsatz von Open Source entscheiden, tun Sie dies mit Vorsicht und wählen Sie aus, wo Sie Open-Source-Bibliotheken einsetzen möchten. Letztendlich muss das Design der Identitätssysteme die Führung übernehmen. Open Source kann ein Projekt bereichern, besonders wenn es mit Bedacht ausgewählt wird. Wählen Sie eine Bibliothek, die nur die Funktionalität bietet, die Sie wirklich brauchen.
Be the first to comment