Configurare i criteri per Apache Hive in HDInsight con Enterprise Security Package

Questo articolo illustra come configurare i criteri di Apache Ranger per Apache Hive. Si creano due criteri ranger per limitare l'accesso hivesampletablea . Viene hivesampletable fornito con cluster HDInsight. Dopo aver configurato i criteri, usare il driver Excel e Open Database Connessione ivity (ODBC) per connettersi alle tabelle Hive in HDInsight.

Prerequisiti

  • Un cluster HDInsight con Enterprise Security Package (ESP). Per altre informazioni, vedere Configurare cluster HDInsight con ESP.
  • Workstation con app di Microsoft 365 per le aziende, Office 2016, Office 2013 Professional Plus, Excel 2013 Standalone o Office 2010 Professional Plus.

Connessione all'interfaccia utente di Apache Ranger Amministrazione

Per connettersi all'interfaccia utente di Ranger Amministrazione:

  1. Da un browser passare all'interfaccia utente di 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 Hadoop memorizzate nella cache, usare una nuova finestra del browser InPrivate per connettersi all'interfaccia utente di Ranger Amministrazione.

  2. Accedere usando il nome utente e la password del dominio amministratore del cluster:

    Screenshot che mostra la home page di HDInsight ESP Ranger.

    Attualmente, Ranger è compatibile solo con Yarn e Hive.

Creare utenti del dominio

Per informazioni su come creare hiveruser1 e , vedere Creare un cluster HDInsight con ESPhiveuser2. In questo articolo vengono usati i due account utente.

Creazione dei criteri di Ranger

In questa sezione vengono creati due criteri ranger per l'accesso a hivesampletable. Si concede l'autorizzazione di selezione per set di colonne diversi. Entrambi gli utenti sono stati creati usando Creare un cluster HDInsight con ESP. Nella sezione successiva si testano i due criteri in Excel.

Per creare criteri ranger:

  1. Aprire l’interfaccia utente di amministrazione di Ranger. Vedere la sezione precedente Connessione all'interfaccia utente di Apache Ranger Amministrazione.

  2. In Hive selezionare CLUSTERNAME_Hive. Vengono visualizzati due criteri preconfigurati.

  3. Selezionare Aggiungi nuovo criterio e quindi immettere i valori seguenti:

    Proprietà valore
    Nome criteri read-hivesampletable-all
    Hive Database impostazione predefinita
    table hivesampletable
    Colonna Hive *
    Seleziona utente hiveuser1
    Autorizzazioni Proprietà

    Screenshot che mostra i criteri Hive di HDInsight ESP Ranger da configurare. .

    Nota

    Se un utente di dominio non è popolato in Select User (Seleziona utente), attendere alcuni istanti affinché Ranger si sincronizzi con Microsoft Entra ID.

  4. Selezionare Aggiungi per salvare il criterio.

  5. Ripetere gli ultimi due passaggi per creare un altro criterio con le proprietà seguenti:

    Proprietà valore
    Nome criteri read-hivesampletable-devicemake
    Hive Database impostazione predefinita
    table hivesampletable
    Colonna Hive clientid, devicemake
    Seleziona utente hiveuser2
    Autorizzazioni Proprietà

Creare un'origine dati ODBC Hive

Per istruzioni su come creare un'origine dati ODBC Hive, vedere Creare un'origine dati ODBC Hive.

Proprietà Descrizione
Nome origine dati Assegnare un nome all'origine dati.
Host Immettere CLUSTERNAME.azurehdinsight.net. Ad esempio, usare myHDICluster.azurehdinsight.net.
Porta Utilizzare 443. Questa porta è cambiata da 563 a 443.
Database Usare l'impostazione predefinita.
Hive Server Type Selezionare Hive Server 2.
Meccanismo Selezionare Servizio Azure HDInsight.
HTTP Path Lascialo vuoto.
Nome utente Immetti hiveuser1@contoso158.onmicrosoft.com. Aggiornare il nome di dominio se è diverso.
Password Immettere la password per hiveuser1.

Selezionare 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 per tutte le colonne e hiveuser2 dispone dell'autorizzazione di selezione per due colonne. In questa sezione vengono rappresentati due utenti che importano dati in Excel.

  1. Aprire una cartella di lavoro nuova o esistente in Excel.

  2. Nella scheda Dati passare a Recupera dati>da altre origini>da ODBC per aprire la finestra Da ODBC.

    Screenshot che mostra la procedura guidata Apri connessione dati.

  3. Nell'elenco a discesa selezionare il nome dell'origine dati creato nell'ultima sezione e quindi selezionare OK.

  4. Per il primo utilizzo viene visualizzata una finestra di dialogo driver ODBC . Selezionare Windows dal menu a sinistra. Selezionare quindi Connessione per aprire la finestra Strumento di navigazione.

  5. Attendere l'apertura della Select Database and Table finestra di dialogo. Questo passaggio potrebbe richiedere alcuni secondi.

  6. Selezionare hivesampletable>Next (Avanti).

  7. Selezionare Fine.

  8. Nella finestra di dialogo Importa dati è possibile modificare o specificare la query. A tale scopo, selezionare Proprietà. Questo passaggio potrebbe richiedere alcuni secondi.

  9. 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 con le credenziali per hiveuser1, ma questa query non funziona con le credenziali per hiveuser2.

  10. Selezionare OK per chiudere la finestra di dialogo Proprietà Connessione ion.

  11. Selezionare OK per chiudere la finestra di dialogo Importa dati .

  12. Immettere nuovamente la password per hiveuser1 e quindi selezionare OK. Sono necessari alcuni secondi prima che i dati vengano importati in Excel. Al termine, vengono visualizzate 11 colonne di dati.

Per testare il secondo criterio (read-hivesampletable-devicemake) creato nell'ultima sezione:

  1. Aggiungere un nuovo foglio in Excel.

  2. Seguire l'ultima procedura per importare i dati. L'unica modifica apportata consiste nell'usare le credenziali per hiveuser2 anziché hiveuser1. Questa azione ha esito negativo perché hiveuser2 dispone dell'autorizzazione per visualizzare solo due colonne. Viene 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 ...]'.
    
  3. Seguire la stessa procedura per importare i dati. Questa volta, usare le credenziali per hiveuser2 e modificare anche l'istruzione select da:

    SELECT * FROM "HIVE"."default"."hivesampletable"
    

    Con:

    SELECT clientid, devicemake FROM "HIVE"."default"."hivesampletable"
    

    Al termine, vengono visualizzate due colonne di dati importati.

Passaggi successivi