2017-01-02 1 views
0

Ich habe Linux Azure VM erstellt und Java-Anwendung darauf ausgeführt. Dann habe ich HDInsight Spark Cluster, die hdfs, Garn, Funken, etc. hatWird die Kerberos-Authentifizierung in WASB in Azure VM unterstützt?

Ich habe VM mit Spark-Cluster mit dem Storage Access Key in core-site.xml auf VM verbunden.

Kern-site.xml

<property> 
    <name>fs.azure.account.key.YOUR_ACCOUNT.blob.core.windows.net</name> 
    <value>Storage_Access_Key</value> 
</property> 

und ich bin in der Lage meine Anwendung zu authentifizieren, mit oben. Aber ich möchte mich für meine JAVA-Anwendung mit Kerberos in Azure Blob Storage (WASB) auf Azure VM authentifizieren.

Gibt es mögliche Optionen und Dokumentation dafür? Bitte helfen Sie mir

+0

@Walter Bitte helfen Sie mir, dies zu beantworten? – karan

+0

Ist WASB == Blobspeicher? Wenn dem so ist, bin ich nicht ganz sicher, ob wir die Anforderung hier verstehen, seien Sie vorsichtig, etwas genauer zu sein? – evilSnobu

Antwort

1

Zuerst stellen Sie bitte sicher, dass die Kerberos-Authentifizierung für HDInsight konfiguriert wurde. Wenn nicht sicher, finden Sie in den hortonworks offiziellen Dokumenten https://docs.hortonworks.com/HDPDocuments/Ambari-2.1.2.1/bk_Ambari_Security_Guide/content/ch_configuring_amb_hdp_for_kerberos.html, um es zu tun.

Zweitens können Sie versuchen, auf das Hadoop offizielle document für Authentifizierung mit Kerberos verweisen, um Ihre Webanwendung zu konfigurieren.

Oder Sie können manuell mit Kerberos in der Programmierung als unten authentifizieren.

import org.apache.hadoop.security.UserGroupInformation; 
import org.apache.hadoop.conf.Configuration 

Configuration conf = new Configuration(); 
conf.set("hadoop.security.authentication", "Kerberos"); 
UserGroupInformation.setConfiguration(conf); 
UserGroupInformation.loginUserFromKeytab("<username>", "/path/to/kerberos.keytab"); 

Dann

FileSystem fs = FileSystem.get(conf); 

Als Referenz können Sie auch auf den Dritten Blogs (1, 2) beziehen sich auf weitere Details wissen.