Einführung in die Hadoop-Sicherheit

Einführung in die Hadoop-Sicherheit

  • Sicherheit
6 Minuten Lesezeit Aktualisiert Jul 5, 2016

Auf einen Blick: Die Hadoop-Sicherheit hat sich von minimalen Schutzmaßnahmen zu robusten Maßnahmen entwickelt, die für Unternehmen unerlässlich sind, mit Fokus auf Verschlüsselung, Authentifizierung und Zugriffsmanagement. Tools wie Knox und Ranger bieten zentrale Sicherheitsverwaltung über Hadoop-Cluster hinweg.

  • Hadoop unterstützt nun Ende-zu-Ende-Verschlüsselung und Kerberos-Authentifizierung.
  • Knox und Ranger verbessern das Sicherheitsmanagement in Hadoop-Umgebungen.

Sicherung der Hadoop-Umgebung

Als Hadoop 2007 erstmals veröffentlicht wurde, war es dazu gedacht, große Mengen an Webdaten in einer vertrauenswürdigen Umgebung zu verwalten, daher war Sicherheit kein bedeutendes Thema oder Schwerpunkt. Mit der zunehmenden Akzeptanz und der Entwicklung von Hadoop zu einer Unternehmenstechnologie entwickelte es sich den Ruf, eine unsichere Plattform zu sein. Die meisten der ursprünglichen Hadoop-Sicherheitsmängel wurden in späteren Versionen behoben, aber die Wahrnehmung ändert sich nur langsam. Der Sicherheitsruf von Hadoop hat seine Realität überdauert.

Die Sicherheit ist bei den Hadoop-Implementierungen tatsächlich ziemlich inkonsistent, da die eingebaute Sicherheit und verfügbaren Optionen zwischen den Versionsversionen inkonsistent sind. Es ist auch wichtig zu beachten, dass die kommerziellen Hadoop-Distributionen von Softwareanbietern (z. B. Cloudera, Hortonworks, MapR) zusätzliche, proprietäre Sicherheit bieten, die in den kostenlosen Hadoop-Veröffentlichungen der Apache Foundation nicht enthalten ist.

Neue Hadoop-Implementierungen können äußerst sicher sein, aber viele ältere Hadoop-Implementierungen können dennoch Sicherheitslücken aufweisen. Dieser Abschnitt hebt historische Hadoop-Sicherheitslücken hervor und identifiziert die verfügbaren Ressourcen und Taktiken, um diese zu beheben.

Es ist leicht, sich schnell in den Details zu verlieren, wenn man über Informationssicherheit spricht. Um Verwirrung zu vermeiden, konzentrieren wir uns auf drei grundlegende Bereiche:

  • Wie Daten verschlüsselt oder anderweitig geschützt werden, während sie gespeichert sind (in Ruhe) und während ihrer Bewegung im Netzwerk
  • Wie Systeme und Nutzer authentifiziert werden, bevor sie auf Daten in der Hadoop-Infrastruktur zugreifen
  • Wie der Zugriff auf verschiedene Daten innerhalb der Umgebung verwaltet wird
play

Knox, Ranger vereinfachen das Sicherheitsmanagement

Das Hadoop-Ökosystem verfügt über Ressourcen zur Unterstützung der Sicherheit. Knox und Ranger sind zwei wichtige Open-Source-Projekte von Apache. Knox bietet einen Rahmen zur Sicherheitsverwaltung und unterstützt Sicherheitsimplementierungen auf Hadoop-Clustern.

Das Ranger-Projekt konzentriert sich auf die Entwicklung von Werkzeugen und Techniken, die Nutzern helfen, Sicherheit über Hadoop-Cluster hinweg bereitzustellen und zu standardisieren. Es bietet ein zentralisiertes Framework, das zur Verwaltung von Richtlinien auf Ressourcenebene verwendet werden kann, wie Dateien, Ordnern, Datenbanken und sogar für bestimmte Zeilen und Spalten innerhalb von Datenbanken. Ranger unterstützt Administratoren bei der Implementierung von Zugriffsrichtlinien nach Gruppen, Datentypen usw. Ranger verfügt über unterschiedliche Autorisierungsfunktionen für verschiedene Hadoop-Komponenten wie YARN, HBase, Hive usw.

Knox ist ein REST-API-Gateway, das innerhalb der Apache-Community entwickelt wurde, um Überwachung, Autorisierungsmanagement, Auditing und Richtliniendurchsetzung auf Hadoop-Clustern zu unterstützen. Es stellt einen einzigen Zugangspunkt für alle REST-Interaktionen mit Clustern bereit. Durch Knox können Systemadministratoren die Authentifizierung über LDAP und Active Directory verwalten, HTTP-headerbasierte föderierte Identitätsverwaltung durchführen und Hardware auf den Clustern prüfen. Knox unterstützt außerdem eine verbesserte Sicherheit, da es sich mit Unternehmens-Identitätsmanagementlösungen integrieren lässt und Kerberos-kompatibel ist.

Hadoop-Verschlüsselung

Die ursprüngliche Hadoop-Version enthielt keine Verschlüsselung. Spätere Versionen enthielten Ende-zu-Ende-Verschlüsselung, die die Daten schützt, solange sie im Hadoop-Cluster ruhen und im Netzwerk in Bewegung sind. In aktuellen Versionen sind alle in HFDS gespeicherten oder zugänglichen Daten verschlüsselt. Hadoop unterstützt Verschlüsselung auf Festplatten-, Dateisystem-, Datenbank- und Anwendungsebene.

In der Kerntechnologie von Hadoop verfügt das HFDS über Verzeichnisse, die Verschlüsselungszonen genannt werden. Wenn Daten in Hadoop geschrieben werden, werden sie automatisch verschlüsselt (mit einem vom Benutzer gewählten Algorithmus) und einer Verschlüsselungszone zugewiesen. Die Verschlüsselung ist dateispezifisch, nicht zonenspezifisch. Das bedeutet, jede Datei innerhalb der Zone ist mit ihrem eigenen eindeutigen Datenverschlüsselungsschlüssel (DEK) verschlüsselt. Clients entschlüsseln Daten aus HFDS mit einem verschlüsselten Datenverschlüsselungsschlüssel (EDEK) und nutzen dann den DEK, um Daten zu lesen und zu schreiben. Verschlüsselungszonen und DEK-Verschlüsselung finden zwischen Dateisystem- und Datenbankebene der Architektur statt.

Verschlüsselungsschlüssel müssen verwaltet werden, was die Aufgabe des Hadoop Key Management Server ( KMS) ist. Das KMS erzeugt Verschlüsselungsschlüssel, verwaltet den Zugriff auf gespeicherte Schlüssel und verwaltet Verschlüsselung und Entschlüsselung auf HDFS-Clients. KMS ist eine Java-Webanwendung mit sowohl Client- als auch Serverkomponenten, die über die HTTP- und REST-API miteinander kommunizieren. Die Sicherheit in KMS umfasst HTTPS-sicheren Transport und Unterstützung für HTTP-SPNEGO Kerboros-Authentifizierung.

Hadoop-Vertriebsanbieter und andere Lösungsanbieter haben zusätzliche Sicherheit entwickelt, die entweder spezifisch für ihre Produkte oder für die gesamte Hadoop-Umgebung anwendbar ist. Viele Verbesserungen konzentrieren sich darauf, Hadoop-Daten während ihrer Bewegung zu schützen. Zum Beispiel gibt es das Wire-Verschlüsselungsprotokoll, das auf Hadoop-Daten angewendet werden kann, die über HTTP, RPC, Data Transfer Protocol (DTP) und JDBC übertragen werden. Es gibt auch SSL-Schutz für JDBC-Clients und MapReduce-Mischungen, SASL für Netzwerk-RPCs und mehr.

Hadoop-Authentifizierung

Die Authentifizierung in der Hadoop-Umgebung hat eine rasante und umfangreiche Entwicklung durchlaufen. Die ursprüngliche Hadoop-Version enthielt keine Möglichkeiten zur Authentifizierung von Benutzern, da es sich um ein begrenztes Projekt handelte, das für die Nutzung in einer vertrauenswürdigen Umgebung gedacht war. Eine spätere Version fügte eingeschränkte Berechtigungsverwaltungsfunktionen für Dateien innerhalb des HDFS hinzu, aber Hadoop blieb weiterhin nicht ausreichend in der Bereitstellung der unternehmensweiten Authentifizierungssicherheit. Springen wir bis heute, wo die Benutzerauthentifizierungs- und Identitätsmanagement-Lösungen, die Unternehmen für ihre Kern-IT-Infrastruktur nutzen, auf die Hadoop-Umgebung ausgeweitet werden können.

Heute ist Hadoop sowohl im sicheren als auch im unsicheren Modus konfigurierbar. Der Hauptunterschied besteht darin, dass der sichere Modus eine Authentifizierung erfordert – für jeden Benutzer und jeden Dienst. Kerberos bildet die Grundlage für die Authentifizierung im Hadoop-sicheren Modus. Die Daten werden im Rahmen des Authentifizierungsprozesses verschlüsselt.

Viele Organisationen führen die Authentifizierung in der Hadoop-Umgebung mithilfe ihrer Active Directory- oder LDAP-Lösungen durch. Dieser Ansatz war früher nicht mit der Hadoop-Umgebung kompatibel und stellt gut dar, wie Hadoop reift und sich weiterentwickelt. Die Knox-API aus dem Apache Hadoop-Projekt wird verwendet, um Active Directory oder LDAP auf Hadoop-Cluster zu erweitern. Sie wird auch verwendet, um föderierte Identitätsmanagementlösungen in die Umgebung auszuweiten.

Hadoop-Zugriff und Berechtigungen

Die Authentifizierung einer Benutzer- oder Dienstanfrage gewährt ihm nicht automatisch uneingeschränkten Zugriff auf alle Daten im Hadoop-Cluster. Zugriffsrechte können für Teile des HDFS und sogar für bestimmte Dateien und Datentypen festgelegt werden. Wie bereits erwähnt, erleichtert Ranger die Einrichtung und Implementierung von Berechtigungsrechten. Zusätzliche Ressourcen stehen ebenfalls zur Verfügung. Der HDFS Permissions Guide ist eine Komponente, die es Administratoren ermöglicht, Berechtigungen für Verzeichnisse und Dateien im HFDS festzulegen. Berechtigungen können auf Gruppen- und Einzelebene festgelegt werden. Berechtigungen umfassen, wer auf die Datei zugreifen, aktualisieren, löschen usw. Der Service Level Authorization ist eine separate Funktion, die verwendet wird, um zu überprüfen, ob Clients, die versuchen, sich mit einem bestimmten Hadoop-Dienst zu verbinden, berechtigt sind, darauf zuzugreifen. Wie der HDFS Permissions Guide unterstützt Service Level Authorization individuelle und Gruppenrechte. Sentry ist ein Modul, das mit Hive, HDFS-Datentabellen, Impala und anderen Komponenten arbeitet und ein detaillierteres Berechtigungsmanagement für Daten und Metadaten in Hadoop-Clustern bereitstellt.

Ranger, HDFS Permissions Guide, Service Level Authorization und Sentry sind Teil des Hadoop-Projekts. Auch hier sind zusätzliche Berechtigungsschutzmaßnahmen sowie zugehörige Sicherheits- und Managementfunktionen in die verschiedenen kommerziellen Hadoop-Veröffentlichungen integriert.

Organisationen führen auch häufig Datenmaskierung in Hadoop mit verschiedenen kommerziellen Lösungen durch. Datenmaskierung bezeichnet die Praxis, Originaldatensätze (durch Verschlüsselung) zu verbergen, sodass sie für unbefugte Nutzer nicht zugänglich sind. Datenmaskierung erfolgt in Big-Data-Umgebungen, weil viele Anwendungen einige Informationen aus einem Datensatz benötigen, aber keinen vollständigen Datensatz. Zum Beispiel muss eine bildgebende Klinik wissen, wie viele Patienten in einer Einrichtung innerhalb eines sechsmonatigen Zeitraums Mammographien erhalten haben, aber nicht die Ergebnisse des Patienten oder vollständige Krankengeschichte. Patientenergebnisse wären für einen Kliniker relevant, der andere Berechtigungen benötigt.

Hadoop-Sicherheit damals und heute

Komponente Ursprüngliche Hadoop-Veröffentlichung Jetzt enthalten/verfügbar
Verschlüsselung
Nicht enthalten
DEK-Verschlüsselung wird automatisch auf Daten in HFDS und in Bewegung angewendet; zusätzliche Datenschutzfunktionen sind spezifisch für jede kommerzielle Distribution; KMS verwaltet Verschlüsselungsschlüssel; Kerberos wird häufig verwendet; zusätzliche Verschlüsselungsmethoden sind mit Hadoop kompatibel bzw. verfügbar.
Authentifizierung
Keine
Kerberos bildet die Grundlage für den sicheren Modus von Hadoop; Active Directory und LDAP wurden auf Hadoop erweitert; Lösungen für Identitätsmanagement wurden auf Hadoop erweitert.
Zugriff & Berechtigungen
HDFS-Dateiberechtigungen
Berechtigungen können individuell, nach Gruppe und Rolle sowie für bestimmte Datentypen und Dateien festgelegt werden; Datenmaskierung kann angewendet werden, um die zugriffsbereiten Daten zu begrenzen.

Big-Data-Sicherheitsprobleme mit Hadoop lösen

Big Data ist per Definition groß, aber ein einheitlicher Sicherheitsansatz ist unangemessen. Die Funktionen von Hadoop ermöglichen es Organisationen, die Sicherheit zu optimieren, um Benutzer-, Compliance- und Unternehmensanforderungen für alle ihre individuellen Datenvermögen innerhalb der Hadoop-Umgebung zu erfüllen. Funktionen wie Rollen-, Benutzer- und Gruppenberechtigungen, Datenmaskierung sowie mehrere Verschlüsselungs- und Authentifizierungsoptionen machen es praktikabel, verschiedene Sicherheitsstufen in einer einzigen, großen Umgebung bereitzustellen. Die wachsende Integration von Integrationslösungen zwischen Hadoop und Active Directory, LDAP und Identitätsmanagementlösungen ermöglichen es Organisationen, ihre Unternehmenssicherheitslösungen zu erweitern, sodass die Hadoop-Infrastruktur kein Silo sein muss.

Sicherheit ist einer der am schnellsten wandelnden Aspekte von Hadoop. Die Fähigkeiten werden kontinuierlich verbessert und übertroffen. Für die neuesten Sicherheitsupdates wenden Sie sich an das Apache-Projekt oder Ihren Hadoop-Distributor.

Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.

Mehr aus Sicherheit

Abonnieren Sie The Brief

Mit der Registrierung für dieses Angebot bestätigen Sie, dass Sie die Datenschutzrichtlinie von BMC gelesen und zugestimmt haben.

Danke

Sie haben The Brief abonniert
Das Briefing umfasst die Mainframe- und Enterprise-Orchestrierung – BMC AMI und Control-M – sowie die Analystenforschung, Kundeneinsätze und Events in beiden Bereichen.