Apache Hive-beleidsregels configureren in HDInsight met Enterprise Security Package
In dit artikel leert u hoe u Apache Ranger-beleid configureert voor Apache Hive. U maakt twee Ranger-beleidsregels om de toegang tot de hivesampletable
. Het hivesampletable
wordt geleverd met HDInsight-clusters. Nadat u het beleid hebt geconfigureerd, gebruikt u het stuurprogramma Excel en Open Database Verbinding maken ivity (ODBC) om verbinding te maken met Hive-tabellen in HDInsight.
Vereisten
- Een HDInsight-cluster met Enterprise Security Package (ESP). Zie HDInsight-clusters configureren met ESP voor meer informatie.
- Een werkstation met Microsoft 365-apps voor ondernemingen, Office 2016, Office 2013 Professional Plus, Excel 2013 Standalone of Office 2010 Professional Plus.
Verbinding maken naar de gebruikersinterface van Apache Ranger Beheer
Verbinding maken met de Ranger-Beheer gebruikersinterface (UI):
Ga vanuit een browser naar de ranger Beheer gebruikersinterface op
https://CLUSTERNAME.azurehdinsight.net/Ranger/
de locatie waarCLUSTERNAME
de naam van uw cluster is.Notitie
Ranger gebruikt andere referenties dan het Apache Hadoop-cluster. Als u wilt voorkomen dat browsers hadoop-referenties in de cache gebruiken, gebruikt u een nieuw InPrivate-browservenster om verbinding te maken met de ranger-Beheer-gebruikersinterface.
Meld u aan met behulp van de gebruikersnaam en het wachtwoord van het clusterbeheerderdomein:
Op dit moment werkt Ranger alleen met Yarn en Hive.
Domeingebruikers maken
Zie Een HDInsight-cluster maken met ESP voor meer informatie over het maken hiveruser1
en hiveuser2
maken van een HDInsight-cluster. U gebruikt de twee gebruikersaccounts in dit artikel.
Ranger-beleidsregels maken
In deze sectie maakt u twee Ranger-beleidsregels hivesampletable
voor toegang. U geeft een selectiemachtiging voor verschillende sets kolommen. Beide gebruikers zijn gemaakt met behulp van een HDInsight-cluster maken met ESP. In de volgende sectie test u de twee beleidsregels in Excel.
Ranger-beleid maken:
Open de beheerinterface van Ranger. Zie de voorgaande sectie, Verbinding maken naar Apache Ranger Beheer UI.
Selecteer onder Hive CLUSTERNAME_Hive. U ziet twee vooraf geconfigureerde beleidsregels.
Selecteer Nieuw beleid toevoegen en voer de volgende waarden in:
Eigenschappen Weergegeven als Policy Name read-hivesampletable-all Hive-database default table hivesampletable Hive-kolom * Select User hiveuser1 Machtigingen Selecteer .
Notitie
Als een domeingebruiker niet is ingevuld in Select User, wacht u even tot Ranger is gesynchroniseerd met Microsoft Entra-id.
Selecteer Toevoegen om het beleid op te slaan.
Herhaal de laatste twee stappen, zodat u een ander beleid kunt maken met de volgende eigenschappen:
Eigenschappen Weergegeven als Policy Name read-hivesampletable-devicemake Hive-database default table hivesampletable Hive-kolom clientid, devicemake Select User hiveuser2 Machtigingen Selecteer
Een Hive ODBC-gegevensbron maken
Zie Een Hive ODBC-gegevensbron maken voor instructies over het maken van een Hive ODBC-gegevensbron.
Eigenschappen | Beschrijving |
---|---|
Naam van de gegevensbron | Geef een naam op voor uw gegevensbron. |
Host | Voer CLUSTERNAME.azurehdinsight.net in. Gebruik bijvoorbeeld myHDICluster.azurehdinsight.net. |
Poort | Gebruik 443. (Deze poort is gewijzigd van 563 in 443.) |
Database | Gebruik Standaard. |
Type Hive-server | Selecteer Hive Server 2. |
Mechanisme | Selecteer De Azure HDInsight-service. |
HTTP-pad | Laat dit leeg. |
Gebruikersnaam | Voer hiveuser1@contoso158.onmicrosoft.com in. Werk de domeinnaam bij als deze anders is. |
Wachtwoord | Voer het wachtwoord in voor hiveuser1 . |
Selecteer Testen voordat u de gegevensbron opslaat.
Gegevens in Excel importeren vanuit HDInsight
In de laatste sectie hebt u twee beleidsregels geconfigureerd: hiveuser1
heeft de machtiging Selecteren voor alle kolommen en hiveuser2
heeft u de machtiging selecteren voor twee kolommen. In deze sectie imiteert u de twee gebruikers, zodat u gegevens kunt importeren in Excel.
Open een nieuwe of bestaande werkmap in Excel.
Ga op het tabblad Gegevens naar Gegevens>ophalen uit andere bronnen>van ODBC om het venster Van ODBC te openen.
Selecteer in de vervolgkeuzelijst de naam van de gegevensbron die u in de laatste sectie hebt gemaakt en selecteer vervolgens OK.
Voor het eerste gebruik wordt een dialoogvenster van het ODBC-stuurprogramma geopend. Selecteer Windows in het linkermenu. Selecteer vervolgens Verbinding maken om het navigatorvenster te openen.
Wacht tot het
Select Database and Table
dialoogvenster is geopend. Deze stap kan enkele seconden duren.Selecteer hivesampletable>Next.
Selecteer Voltooien.
In het dialoogvenster Gegevens importeren kunt u de query wijzigen of opgeven. Selecteer Hiervoor Eigenschappen. Deze stap kan enkele seconden duren.
Selecteer het tabblad Definitie . De opdrachttekst is:
SELECT * FROM "HIVE"."default"."hivesampletable"`
Op basis van het Ranger-beleid dat u hebt gedefinieerd,
hiveuser1
is de machtiging voor alle kolommen geselecteerd. Deze query werkt met de referenties voorhiveuser1
, maar deze query werkt niet met de referenties voorhiveuser2
.Selecteer OK om het dialoogvenster Verbinding maken eigenschappen te sluiten.
Selecteer OK om het dialoogvenster Gegevens importeren te sluiten.
Voer het wachtwoord opnieuw in voor
hiveuser1
en selecteer VERVOLGENS OK. Het duurt enkele seconden voordat de gegevens in Excel worden geïmporteerd. Wanneer deze is voltooid, ziet u 11 kolommen met gegevens.
Als u het tweede beleid (read-hivesampletable-devicemake) wilt testen dat u in de laatste sectie hebt gemaakt:
Voeg een nieuw blad in Excel toe.
Voer de vorige procedure uit om de gegevens te importeren. De enige wijziging die u aanbrengt, is het gebruik van de referenties voor
hiveuser2
in plaats vanhiveuser1
. Deze actie mislukt omdathiveuser2
deze machtiging heeft om slechts twee kolommen weer te geven. U ziet de volgende fout:[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 ...]'.
Voer dezelfde procedure uit om gegevens te importeren. Gebruik deze keer de referenties voor
hiveuser2
en wijzig ook de select-instructie uit:SELECT * FROM "HIVE"."default"."hivesampletable"
Aan:
SELECT clientid, devicemake FROM "HIVE"."default"."hivesampletable"
Wanneer deze is voltooid, ziet u twee kolommen met geïmporteerde gegevens.
Volgende stappen
- Zie HDInsight-clusters configureren met ESP als u een HDInsight-cluster wilt configureren met ESP.
- Zie HDInsight-clusters beheren met ESP als u een HDInsight-cluster wilt beheren met ESP.
- Als u Hive-query's wilt uitvoeren met behulp van Secure Shell (SSH) in HDInsight-clusters met ESP, raadpleegt u SSH gebruiken met HDInsight.
- Als u Hive wilt verbinden met behulp van Hive Java Database Verbinding maken ivity (JDBC), raadpleegt u Verbinding maken met Apache Hive in Azure HDInsight met behulp van het Hive JDBC-stuurprogramma.
- Als u Excel wilt verbinden met Hadoop met behulp van Hive ODBC, raadpleegt u Verbinding maken Excel met Apache Hadoop met het ODBC-station van Microsoft Hive.
- Zie Verbinding maken Excel met Apache Hadoop verbinden met Behulp van Power Query om Excel te verbinden met Hadoop met behulp van Power Query.