Verschlüsselung während der Übertragung in 2 HiveServer - Amazon EMR

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verschlüsselung während der Übertragung in 2 HiveServer

Ab Amazon EMR Version 6.9.0 ist HiveServer 2 (HS2) als Teil der Sicherheitskonfiguration TLS/SSL-fähig. Verschlüsselung während der Übertragung in 2 HiveServer Dies wirkt sich darauf aus, wie Sie eine Verbindung zur HS2 Ausführung auf einem Amazon EMR-Cluster herstellen, bei dem die Verschlüsselung während der Übertragung aktiviert ist. Um eine Verbindung herzustellen HS2, müssen Sie die TRUSTSTORE_PASSWORD Parameterwerte TRUSTSTORE_PATH und in der JDBC-URL ändern. Die folgende URL ist ein Beispiel für eine JDBC-Verbindung für HS2 mit den erforderlichen Parametern:

jdbc:hive2://HOST_NAME:10000/default;ssl=true;sslTrustStore=TRUSTSTORE_PATH;trustStorePassword=TRUSTSTORE_PASSWORD

Verwenden Sie unten die entsprechenden Anweisungen für die Verschlüsselung auf dem Cluster oder außerhalb von Cluster 2. HiveServer

On-cluster HS2 access

Wenn Sie mit dem Beeline-Client auf HiveServer 2 zugreifen, nachdem Sie eine SSH-Verbindung zum Primärknoten hergestellt haben, verweisen Sie auf die Suche /etc/hadoop/conf/ssl-server.xml nach den Parameterwerten und mithilfe von Konfiguration TRUSTSTORE_PATH undTRUSTSTORE_PASSWORD. ssl.server.truststore.location ssl.server.truststore.password

Die folgenden Beispielbefehle können Ihnen beim Abrufen dieser Konfigurationen helfen:

TRUSTSTORE_PATH=$(sed -n '/ssl.server.truststore.location/,+2p' /etc/hadoop/conf/ssl-server.xml | awk -F "[><]" '/value/{print $3}') TRUSTSTORE_PASSWORD=$(sed -n '/ssl.server.truststore.password/,+2p' /etc/hadoop/conf/ssl-server.xml | awk -F "[><]" '/value/{print $3}')
Off-cluster HS2 access

Wenn Sie von einem Client außerhalb des Amazon EMR-Clusters auf HiveServer 2 zugreifen, können Sie einen der folgenden Ansätze verwenden, um das und abzurufen: TRUSTSTORE_PATH TRUSTSTORE_PASSWORD

  • Konvertieren Sie die PEM-Datei, die während der Sicherheitskonfiguration erstellt wurde, in eine JKS-Datei und verwenden Sie dieselbe in der JDBC-Verbindungs-URL. Verwenden Sie für openssl und keytool die folgenden Befehle:

    openssl pkcs12 -export -in trustedCertificates.pem -inkey privateKey.pem -out trustedCertificates.p12 -name "certificate" keytool -importkeystore -srckeystore trustedCertificates.p12 -srcstoretype pkcs12 -destkeystore trustedCertificates.jks
  • Alternativ können Sie auf /etc/hadoop/conf/ssl-server.xml verweisen, um die Parameterwerte TRUSTSTORE_PATH und TRUSTSTORE_PASSWORD mithilfe der Konfiguration ssl.server.truststore.location und ssl.server.truststore.password zu finden. Laden Sie die Truststore-Datei auf den Client-Computer herunter und verwenden Sie den Pfad auf dem Client-Computer als TRUSTSTORE_PATH.

    Weitere Informationen zum Zugriff auf Anwendungen von einem Client außerhalb des Amazon-EMR-Clusters finden Sie unter Verwenden des Hive-JDBC-Treibers.