Authentifizierung und Autorisierung: Datensicherheit für Data-Science-Umgebungen

Eine wesentliche Frage für den Ausbau und die nachhaltige Nutzung von IT-Systemen ist die zentrale Steuerung und Verwaltung von Benutzern und Rechten. Betrachtet man die implementierten Systeme, lassen sich zwei Fragestellungen ableiten: Wer meldet sich am System an (Authentifizierung) und welche Rechte besitzt diese Person auf dem genutzten System (Autorisierung)? Bei der Implementierung einer optimalen Analyseumgebung sind die Authentifizierung und Autorisierung wichtige Komponenten für ein einwandfreies Betriebssystem.

Im Hinblick auf die Sensibilität der Daten, sind besondere Anforderungen notwendig, um den Datenschutz jederzeit zu wahren und die jeweils relevanten Informationen den Nutzern bereit zu stellen. Die Authentifizierung und Autorisierung sind die notwendige, technische Voraussetzung für den flächendeckenden Roll-out von Data-Science-Lösungen.

 

Authentifizierung 

Wer kennt es nicht: Nur mit einer Bankkarte und der dazugehörigen PIN lässt sich an einem Bankautomaten Bargeld abheben. Diese voneinander unabhängigen Komponenten (Faktoren) werden für den Identitätsnachweis eines Nutzers abgefragt, um sicherheitskritische Anwendungsbereiche und Systeme schützen zu können. Authentifizierungssysteme können einfache Nutzer- und Kennwort-Abfragen sein, werden aber bei sicherheitskritischen Systemen gerne mit weiteren Abfragen als Zwei-Faktor-Authentifizierung kombiniert.

Nachdem ein Nutzer sich mit der Eingabe seines Benutzernamens und Passworts authentisiert hat, folgt die Authentifizierung. Diese prüft und bestätigt die Identität des Nutzers, gleicht die eingegebenen Daten mit den entsprechenden gespeicherten ab und bestätigt entweder die Korrektheit der Anmeldedaten oder lehnt diese ab und verweigert schließlich den Zugang zur Applikation.

Information

Die Authentisierung ist der erste Schritt zur Prüfung der Identität und stellt somit den aktiv zu erbringenden Nachweis einer Person dar. Dies bedeutet, dass die Person diejenige ist, die sie vorgibt zu sein. So verfügt sie beispielsweise über geheime Informationen, die nur ihr bekannt sind (z.B. Passwort) oder besitzt einen Identifizierungsgegenstand (z.B. Personalausweis).  

Autorisierung

Nach einer erfolgreichen Authentifizierung erhält der Nutzer Zugriffsrechte auf die Applikation. An dieser Stelle kommt die Autorisierung zu tragen. Die Autorisierung überwindet Mechanismen von Sicherungen gegen Unbefugte. Um nicht für jeden einzelnen Nutzer individuelle Zugriffsrechte festlegen zu müssen, werden Rollen zugeordnet, die an beliebig viele Benutzer vergeben werden können. Benutzer, die einer bestimmten Rolle zugeteilt sind, sind dann autorisiert, spezifische Zugriffe durchzuführen. Häufige Beispiele für die Nutzung von Rollen ist die Aufteilung zwischen normalen Nutzern des Systems und Admins, aber auch die Steuerung von Zugriffen auf bestimmte Datentöpfe können auf diesem Weg reglementiert werden.

Geregelte Benutzerrechte durch ein zweischichtiges Konzept

Die Authentifizierung und Autorisierung finden jeweils durch die Applikation statt, welche diese Aufgabe in Zusammenarbeit mit einem zentralen Identitätsmanagements als externen Dienst lösen kann. In diesem zweischichtigen Konzept wird erst die Identität und anschließend die Berechtigungen des Endnutzers verifiziert.

Durch dieses Vorgehen wird gewährleistet, dass nur Nutzer Zugriff auf das System haben, die einer bestimmten Gruppe im Verzeichnisdienst (bspw. Active Directory) zugehörig sind. Auf den Systemen lassen sich durch die Autorisierung neben den verfügbaren Ressourcen auch Befehle des Nutzers steuern.

Beispiel

Eine Person aus Deutschland, die in der Sales-Abteilung arbeitet, ist ausschließlich berechtigt Kundendaten aus Deutschland zu sehen. Den Zugriff auf andere Kundendaten werden der Person verweigert, da sie nicht autorisiert ist diese Daten einzusehen. Komplementär hierzu werden die Zugriffe für andere Länder definiert. Der Leiter des Vertriebs für Europa hingegen erhält die Rollen für alle europäischen Länder und damit Zugriff auf deutlich mehr Daten.

Eine wiederkehrende Herausforderung ist die trennscharfe Definition von Rollen. Sind wir im Beispiel noch auf die einfache Vergabe von Rollen für jedes Land beschränkt, bewegen wir uns in der Praxis häufig auf deutlich mehr Dimensionen. Teilt man die Daten im Beispiel auf Adresse, Umsatzzahlen und den Zugriff auf E-Mails des Kunden auf, so ergibt sich schnell ein wesentlich komplexeres Konzept.   Gerade bei Abteilungs- und damit rollenübergreifenden Projektteams gibt es hier besondere Herausforderungen, die sich durch den großen Spielraum mit Gruppen in Active Directories abbilden lassen. So können Fachexperten aus verschiedenen Abteilungen ein Projektteam bilden, welches losgelöst von bestehenden Abteilungen nebenher existieren kann, ohne die bisherigen Berechtigungen zu verlieren.

 

Berechtigungskonzept mittels technischer Nutzer

Ein weiteres, häufig genutztes Prinzip eines Berechtigungskonzeptes ist die Verwendung von technischen Nutzern. Diese finden in der Regel Verwendung falls keine Login-Maske auf App-Ebene gewünscht oder realisierbar ist und lediglich die Rechte der Applikation selbst gesteuert werden können.   In komplexeren IT-Landschaften werden technische Nutzer häufig zur Anbindung bestimmter Dienste verwendet obwohl der personalisierte Nutzer bekannt ist. In diesem Fall können Informationen über den angemeldeten Benutzer durch die Applikation an angebundene Systeme weitergereicht werden. Beispielsweise als Bedingungen innerhalb von Abfragen an Datenbanken.  Die folgende Infografik illustriert, basierend auf dem vorangegangenen Beispiel, den Einsatz eines technischen Users. In diesem Beispiel authentifiziert sich der Nutzer gegen eine Applikation, welche zunächst bestimmt ob überhaupt Zugriff auf das System besteht. Eine Möglichkeit für eine Applikation kann ein RStudio-Server sein, der eine korrekte Authentifizierung voraussetzt. Es lässt sich erkennen, dass der in orange abgebildete Nutzer sich nicht erfolgreich authentifiziert hat, wodurch ihm der Zugang zur Anwendung verweigert wird. Die App selbst baut jedoch eine Datenbankanbindung mit einem technischen User auf. Um die korrekte Autorisierung sicherzustellen wird sämtlichen SQL-Abfragen der User als Parameter mitgegeben, wodurch der Zugriff weiterhin durch entsprechende Strukturen innerhalb der Datenbank gesteuert werden kann.

 

Funktionsweise Authentifizierung und Autorisierung

Die Authentifizierung und Autorisierung sind wichtige Komponenten einer IT-Infrastruktur für datengestützte Unternehmen. Im Rahmen unseres eoda | analytic infrastrucure consulting unterstützen wir Sie beim Aufbau Ihrer produktiven Data-Science-Umgebung!

Die Benutzerverwaltung ist auch eines der zentralen Features unserer eigenen Analytikplattform YUNA. Erfahren Sie mehr zu unserer Lösung.