Configurare i criteri per Apache Hive in HDInsight con Enterprise Security Package
Informazioni su come configurare i criteri di Apache Ranger per Apache Hive. In questo articolo vengono creati due criteri di Ranger per limitare l'accesso a hivesampletable. La tabella hivesampletable è disponibile con i cluster HDInsight. Dopo aver configurato i criteri, usare il driver Excel e ODBC per connettersi alle tabelle Hive in HDInsight.
Prerequisiti
- Un cluster HDInsight con Enterprise Security Package. Vedere Configurare i cluster HDInsight con ESP.
- Una workstation con app Microsoft 365 per le aziende, Office 2016, Office 2013 Professional Plus, Excel 2013 Standalone o Office 2010 Professional Plus.
Connettersi all'interfaccia utente di amministrazione di Apache Ranger
Per connettersi all'interfaccia utente di amministrazione di Ranger
Da un browser passare all'interfaccia utente ranger Amministrazione in
https://CLUSTERNAME.azurehdinsight.net/Ranger/
cui CLUSTERNAME è il nome del cluster.Nota
Ranger usa credenziali diverse da quelle del cluster Apache Hadoop. Per evitare che i browser usino credenziali memorizzate nella cache di Hadoop, connettersi all'interfaccia utente di amministrazione di Ranger da una nuova finestra del browser InPrivate.
Eseguire l'accesso usando il nome utente e la password di amministratore cluster:
Attualmente, Ranger è compatibile solo con Yarn e Hive.
Creazione di utenti del dominio
Per informazioni su come creare hiveruser1 e hiveuser2, vedere Creare un cluster HDInsight con ESP. In questo articolo si usano i due account utente.
Creazione dei criteri di Ranger
In questa sezione vengono creati due criteri di Ranger per accedere a hivesampletable. Vengono concesse autorizzazioni di selezione su diversi set di colonne. Entrambi gli utenti sono stati creati tramite la procedura descritta in Creare un cluster HDInsight con ESP. Nella sezione successiva si testeranno i due criteri in Excel.
Per creare criteri di Ranger
Aprire l'interfaccia utente di amministrazione di Ranger. Consultare la sezione Connettersi all'interfaccia utente di amministrazione di Apache Ranger.
Selezionare CLUSTERNAME_Hive, in Hive. Verranno visualizzati due criteri preconfigurati.
Selezionare Aggiungi nuovo criterio e quindi immettere i valori seguenti:
Proprietà Valore Nome criterio read-hivesampletable-all Hive Database default table hivesampletable Colonna Hive * Seleziona utente hiveuser1 Autorizzazioni Proprietà .
Nota
Se l'utente di un dominio non compare in Seleziona utente, attendere alcuni istanti per la sincronizzazione di Ranger con AAD.
Selezionare Aggiungi per salvare il criterio.
Ripetere gli ultimi due passaggi per creare un altro criterio con le proprietà seguenti:
Proprietà Valore Nome criterio read-hivesampletable-devicemake Hive Database default table hivesampletable Colonna Hive clientid, devicemake Seleziona utente hiveuser2 Autorizzazioni Proprietà
Creare un'origine dati Hive ODBC
Le istruzioni sono disponibili in Creare un'origine dati Hive ODBC.
Proprietà | Descrizione |
---|---|
Data Source Name | Assegnare un nome all'origine dati |
Host | Immettere CLUSTERNAME.azurehdinsight.net. Ad esempio, myHDICluster.azurehdinsight.net |
Porta | Utilizzare 443. Questa porta è passata da 563 a 443. |
Database | Usare Impostazione predefinita. |
Hive Server Type | Selezionare Hive Server 2 |
Mechanism | Selezionare Azure HDInsight Service |
HTTP Path | Lasciare vuoto. |
Nome utente | Immettere hiveuser1@contoso158.onmicrosoft.com. Aggiornare il nome di dominio se è diverso. |
Password | Immettere la password per hiveuser1. |
Assicurarsi di fare clic su Test prima di salvare l'origine dati.
Importazione di dati in Excel da HDInsight
Nell'ultima sezione sono stati configurati due criteri. hiveuser1 dispone dell'autorizzazione di selezione in tutte le colonne, mentre hiveuser2 solo in due di loro. In questa sezione vengono rappresentati due utenti che importano dati in Excel.
Aprire una cartella di lavoro nuova o esistente in Excel.
Nella scheda Dati passare a Carica dati>Da altre origini>Da ODBC per aprire la finestra Da ODBC.
Nell'elenco a discesa selezionare il nome dell'origine dati creato nell'ultima sezione e quindi selezionare OK.
Per il primo utilizzo, verrà aperta una finestra di dialogo del driver ODBC . Selezionare Windows dal menu a sinistra. Selezionare quindi Connetti per aprire la finestra Strumento di navigazione .
Attendere l'apertura della finestra di dialogo Seleziona database e tabella . Questa operazione potrebbe richiedere alcuni secondi.
Selezionare hivesampletable e quindi selezionare Avanti.
Selezionare Fine.
Nella finestra di dialogo Importa dati è possibile modificare o specificare la query. A tale scopo, selezionare Proprietà. Questa operazione potrebbe richiedere alcuni secondi.
Selezionare la scheda Definizione . Il testo del comando è:
SELECT * FROM "HIVE"."default"."hivesampletable"`
In base ai criteri ranger definiti, hiveuser1 dispone dell'autorizzazione di selezione per tutte le colonne. Questa query funziona quindi con le credenziali di hiveuser1, ma questa query non funziona con le credenziali di hiveuser2.
Selezionare OK per chiudere la finestra di dialogo Proprietà connessione.
Selezionare OK per chiudere la finestra di dialogo Importa dati .
Reimmettere la password per hiveuser1, quindi fare clic su OK. L'importazione dei dati in Excel potrebbe richiedere alcuni secondi. Al termine, verranno visualizzate 11 colonne di dati.
Per il test del secondo criterio (read-hivesampletable-devicemake) creato nell'ultima sezione
Aggiungere un nuovo foglio in Excel.
Seguire l'ultima procedura per importare i dati. L'unica differenza è che vengono usate le credenziali di hiveuser2 anziché quelle di hiveuser1. L'esito è negativo perché hiveuser2 ha solo l'autorizzazione per visualizzare due colonne. Verrà visualizzato l'errore seguente:
[Microsoft][HiveODBC] (35) Error from Hive: error code: '40000' error message: 'Error while compiling statement: FAILED: HiveAccessControlException Permission denied: user [hiveuser2] does not have [SELECT] privilege on [default/hivesampletable/clientid,country ...]'.
Seguire la stessa procedura per importare i dati. Questa volta usare le credenziali di hiveuser2 e modificare l'istruzione di selezione da:
SELECT * FROM "HIVE"."default"."hivesampletable"
in:
SELECT clientid, devicemake FROM "HIVE"."default"."hivesampletable"
Al termine, verranno visualizzate due colonne di dati importati.
Passaggi successivi
- Per configurare un cluster HDInsight con Enterprise Security Package, vedere Configurare i cluster HDInsight con ESP.
- Per gestire un cluster HDInsight con ESP, vedere Gestire i cluster HDInsight con ESP.
- Per eseguire query Hive usando SSH nei cluster HDInsight con ESP, vedere Usare SSH con HDInsight.
- Per connettere Hive usando Hive JDBC, vedere Connettersi ad Apache Hive in Azure HDInsight con il driver Hive JDBC
- Per connettere Excel a Hadoop usando ODBC, vedere Connettere Excel ad Apache Hadoop mediante Microsoft Hive ODBC Driver
- Per connettere Excel a Hadoop usando Power Query, vedere Connettere Excel ad Apache Hadoop mediante Power Query