DataSunrise erreicht AWS DevOps Kompetenz Status in AWS DevSecOps und Überwachung, Protokollierung, Performance

Wie man Apache Hive auditiert

Einführung

Apache Hive wird von vielen Organisationen weit verbreitet genutzt, um riesige Mengen strukturierter Daten, die in Hadoop gespeichert sind, zu verarbeiten und zu analysieren. Da das Volumen sensibler Daten, das über Hive verarbeitet wird, zunimmt, wird die Implementierung effektiver Audit-Mechanismen nicht nur aus Sicherheitsgründen, sondern auch zur Einhaltung gesetzlicher Vorschriften essenziell.

Dieser Leitfaden führt Sie durch den Prozess der Einrichtung und Konfiguration von Audit-Fähigkeiten für Apache Hive – von nativen Audit-Funktionen bis hin zu erweiterten Lösungen mit DataSunrise – und stellt sicher, dass Sie die notwendige Übersicht erhalten, um den Datenzugriff zu überwachen, unbefugte Aktivitäten zu erkennen und die Einhaltung zu gewährleisten.

Wie man Apache Hive mit nativen Funktionen auditiert

Apache Hive bietet mehrere integrierte Mechanismen zur Auditierung, die konfiguriert werden können, um Benutzeraktivitäten und an Daten durchgeführte Operationen nachzuverfolgen. Schauen wir uns an, wie diese nativen Audit-Funktionen eingerichtet werden:

Schritt 1: Aktivieren Sie SQL-Standardbasierte Autorisierung

Die SQL-Standardbasierte Autorisierung in Hive stellt ein rollenbasiertes Zugriffskontrollmodell bereit, das grundlegende Audit-Fähigkeiten beinhaltet. Dieses Modell zeichnet Operationen und Berechtigungsänderungen auf, die von Benutzern durchgeführt werden.

Um SQL-Standardbasierte Autorisierung zu aktivieren, ändern Sie Ihre hive-site.xml-Konfigurationsdatei:

<property>
  <name>hive.security.authorization.enabled</name>
  <value>true</value>
</property>
<property>
  <name>hive.security.authorization.manager</name>
  <value>org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory</value>
</property>
<property>
  <name>hive.security.authenticator.manager</name>
  <value>org.apache.hadoop.hive.ql.security.SessionStateUserAuthenticator</value>
</property>
<property>
  <name>hive.server2.enable.doAs</name>
  <value>false</value>
</property>

Nachdem Sie diese Änderungen vorgenommen haben, starten Sie die Hive-Dienste neu, um die Konfiguration anzuwenden.

Schritt 2: Konfigurieren Sie das Logging-Framework

Apache Hive verwendet Log4j zum Protokollieren von Ereignissen, welches so konfiguriert werden kann, dass Audit-Informationen erfasst werden. Um das Audit-Logging zu verbessern, ändern Sie die Datei hive-log4j2.properties:

# Hive-Audit-Protokollierung
appender.AUDIT.type = RollingFile
appender.AUDIT.name = AUDIT
appender.AUDIT.fileName = ${sys:hive.log.dir}/${sys:hive.log.file}.audit
appender.AUDIT.filePattern = ${sys:hive.log.dir}/${sys:hive.log.file}.audit.%d{yyyy-MM-dd}
appender.AUDIT.layout.type = PatternLayout
appender.AUDIT.layout.pattern = %d{ISO8601} %p %c: %m%n
appender.AUDIT.policies.type = Policies
appender.AUDIT.policies.time.type = TimeBasedTriggeringPolicy
appender.AUDIT.policies.time.interval = 1
appender.AUDIT.policies.time.modulate = true
appender.AUDIT.strategy.type = DefaultRolloverStrategy
appender.AUDIT.strategy.max = 30

# Audit Logger
logger.audit.name = org.apache.hadoop.hive.ql.audit
logger.audit.level = INFO
logger.audit.additivity = false
logger.audit.appenderRef.audit.ref = AUDIT

Diese Einstellungen erstellen eine dedizierte Audit-Protokolldatei, die alle Audit-Ereignisse in einem strukturierten Format erfasst.

Schritt 3: Aktivieren Sie HDFS-Audit-Protokolle

Da Hive-Operationen letztendlich HDFS-Operationen beinhalten, bietet das Aktivieren von HDFS-Audit-Protokollen eine zusätzliche Ebene der Überwachung. Ändern Sie dazu die Datei hdfs-site.xml:

<property>
  <name>hadoop.security.authorization</name>
  <value>true</value>
</property>
<property>
  <name>dfs.namenode.audit.log.async</name>
  <value>true</value>
</property>
<property>
  <name>dfs.namenode.audit.log.debug.cmdlist</name>
  <value>open,create,delete,append,rename</value>
</property>

Starten Sie die HDFS-Dienste neu, um diese Änderungen anzuwenden.

Schritt 4: Testen Sie das Audit-Logging

Um zu überprüfen, ob die Auditierung korrekt funktioniert, führen Sie verschiedene Hive-Operationen aus und prüfen Sie die Audit-Protokolle:

-- Erstellen Sie eine Testdatenbank
CREATE DATABASE audit_test;

-- Erstellen Sie eine Tabelle
USE audit_test;
CREATE TABLE employee (
  id INT,
  name STRING,
  salary FLOAT
);

-- Daten einfügen
INSERT INTO employee VALUES (1, 'John Doe', 75000.00);
INSERT INTO employee VALUES (2, 'Jane Smith', 85000.00);

-- Daten abfragen
SELECT * FROM employee WHERE salary > 80000;

-- Daten aktualisieren
UPDATE employee SET salary = 90000.00 WHERE id = 1;

-- Tabelle löschen
DROP TABLE employee;

Nachdem Sie diese Operationen ausgeführt haben, überprüfen Sie die Audit-Protokolle, um sicherzustellen, dass alle Aktivitäten aufgezeichnet werden:

cat ${HIVE_LOG_DIR}/hive.log.audit

Native Hive Audit Logs

Schritt 5: Integration mit Apache Ranger (Optional)

Für umfassendere Audit-Fähigkeiten integrieren Sie Apache Hive mit Apache Ranger. Ranger bietet eine zentrale Sicherheitsverwaltung und detaillierte Audit-Protokolle für Hadoop-Komponenten.

  1. Installieren Sie Apache Ranger mit der offiziellen Installationsanleitung.

  2. Konfigurieren Sie das Ranger-Hive-Plugin, indem Sie hive-site.xml ändern:

<property>
  <name>hive.security.authorization.enabled</name>
  <value>true</value>
</property>
<property>
  <name>hive.security.authorization.manager</name>
  <value>org.apache.ranger.authorization.hive.authorizer.RangerHiveAuthorizerFactory</value>
</property>
  1. Konfigurieren Sie die Ranger-Audit-Einstellungen in ranger-hive-audit.xml:
<property>
  <name>xasecure.audit.is.enabled</name>
  <value>true</value>
</property>
<property>
  <name>xasecure.audit.destination.db</name>
  <value>true</value>
</property>
<property>
  <name>xasecure.audit.destination.db.jdbc.driver</name>
  <value>org.postgresql.Driver</value>
</property>
<property>
  <name>xasecure.audit.destination.db.jdbc.url</name>
  <value>jdbc:postgresql://ranger-db:5432/ranger</value>
</property>

Einschränkungen der nativen Auditierung

Obwohl diese nativen Auditierungsmechanismen grundlegende Funktionen bereitstellen, weisen sie mehrere Einschränkungen auf:

  1. Fragmentierte Audit-Daten: Audit-Informationen verteilen sich über mehrere Protokolldateien und Systeme.
  2. Komplexe Konfiguration: Die Einrichtung einer umfassenden Auditierung erfordert die Konfiguration mehrerer Komponenten.
  3. Begrenzte Überwachungstools: Native Audit-Protokolle verfügen nicht über benutzerfreundliche Schnittstellen für die Analyse.
  4. Manuelle Compliance-Berichterstattung: Die Erstellung von Compliance-Berichten erfordert benutzerdefinierte Skripte oder manuelle Extraktion.
  5. Ressourcenintensiv: Umfangreiche Auditierungen können die Performance in Umgebungen mit hohem Volumen beeinträchtigen.

Wie man Apache Hive effizient mit DataSunrise auditiert

Für Organisationen, die umfassendere Audit-Lösungen benötigen, bietet DataSunrise fortschrittliche Funktionen, die die Einschränkungen der nativen Hive-Auditierung adressieren. Lassen Sie uns untersuchen, wie man DataSunrise für die Auditierung von Apache Hive einrichtet und konfiguriert:

Schritt 1: Setzen Sie DataSunrise ein

Beginnen Sie damit, DataSunrise in Ihrer Umgebung einzusetzen. DataSunrise bietet flexible Bereitstellungsoptionen, einschließlich On-Premise, Cloud und hybrider Konfigurationen.

Schritt 2: Verbindung zu Apache Hive herstellen

Sobald DataSunrise eingesetzt ist, verbinden Sie es mit Ihrer Apache Hive-Umgebung:

  1. Navigieren Sie zur DataSunrise-Verwaltungskonsole.
  2. Gehen Sie zu „Datenbanken“ und wählen Sie „Datenbank hinzufügen“.
  3. Wählen Sie „Apache Hive“ als Datenbanktyp aus.
  4. Geben Sie die Verbindungsdetails für Ihre Hive-Instanz ein, einschließlich Host, Port und Authentifizierungsdaten.
  5. Testen Sie die Verbindung, um sicherzustellen, dass sie korrekt konfiguriert ist.

Schritt 3: Konfigurieren Sie Audit-Regeln

Erstellen Sie Audit-Regeln, um festzulegen, welche Aktivitäten überwacht werden sollen:

  1. Gehen Sie zu „Regeln“ und wählen Sie „Regel hinzufügen“.
  2. Wählen Sie „Audit“ als Regeltyp aus.
  3. Konfigurieren Sie die Regelparameter, einschließlich:
    • Regelname und Beschreibung
    • Zielobjekte (Datenbanken, Tabellen, Sichten)
    • Benutzer und Rollen, die überwacht werden sollen
    • Arten von Operationen, die auditiert werden sollen (SELECT, INSERT, UPDATE, DELETE, etc.)
    • Zeitabhängige Bedingungen (falls erforderlich)
  4. Speichern und aktivieren Sie die Regel.

Configure Audit Rules

Schritt 4: Testen und Validieren der Auditierung

Führen Sie verschiedene Hive-Operationen aus, um zu überprüfen, dass DataSunrise die Aktivitäten ordnungsgemäß auditiert:

  1. Führen Sie dieselben Testabfragen aus, die zuvor zur Validierung der nativen Auditierung verwendet wurden.
  2. Navigieren Sie zum Bereich „Audit-Protokoll“ in DataSunrise, um die erfassten Audit-Ereignisse anzusehen.
  3. Überprüfen Sie, ob alle Operationen ordnungsgemäß mit detaillierten Informationen aufgezeichnet werden, einschließlich:
    • Benutzeridentität
    • Zeitstempel
    • SQL-Abfrage
    • Operationstyp
    • Betroffene Objekte
    • Quell-IP-Adresse

Audit-Protokolle anzeigen

Fazit

Eine effektive Auditierung von Apache Hive ist essenziell, um Sicherheit zu gewährleisten, die Einhaltung gesetzlicher Vorschriften sicherzustellen und Einblick in Zugriffsverhalten auf Daten zu gewinnen. Während die nativen Auditierungsfunktionen von Hive grundlegende Funktionalitäten bereitstellen, profitieren Organisationen mit erweiterten Anforderungen von umfassenden Lösungen wie DataSunrise.

DataSunrise verbessert die Auditierung von Apache Hive durch zentrale Verwaltung, detaillierte Audit-Trails, Echtzeit-Benachrichtigungen und automatisierte Compliance-Berichterstattung. Durch die Implementierung einer robusten Audit-Lösung können Organisationen ihre sensiblen Daten schützen, gesetzliche Vorschriften einhalten und schnell auf Sicherheitsvorfälle reagieren.

Bereit, Ihre Auditierungsmöglichkeiten von Apache Hive zu verbessern? Vereinbaren Sie eine Demo, um zu sehen, wie DataSunrise Ihnen dabei helfen kann, eine umfassende Auditierung für Ihre Hive-Umgebung zu implementieren.

Nächste

Apache Hive Audit Log

Erfahren Sie mehr

Benötigen Sie die Hilfe unseres Support-Teams?

Unsere Experten beantworten gerne Ihre Fragen.

Allgemeine Informationen:
[email protected]
Kundenservice und technischer Support:
support.datasunrise.com
Partnerschafts- und Allianz-Anfragen:
[email protected]