Udostępnij za pośrednictwem


Konfigurowanie zasad technologii Apache Hive w usłudze HDInsight przy użyciu pakietu Enterprise Security

Z tego artykułu dowiesz się, jak skonfigurować zasady platformy Apache Ranger dla usługi Apache Hive. Utworzysz dwie zasady platformy Ranger, aby ograniczyć dostęp do elementu hivesampletable. Produkt hivesampletable jest w zestawie z klastrami usługi HDInsight. Po skonfigurowaniu zasad użyjesz sterownika programu Excel i sterownika Open Database Connectivity (ODBC) w celu nawiązania połączenia z tabelami programu Hive w usłudze HDInsight.

Wymagania wstępne

Nawiązywanie połączenia z interfejsem użytkownika administratora platformy Apache Ranger

Aby nawiązać połączenie z interfejsem użytkownika administratora platformy Ranger:

  1. W przeglądarce przejdź do interfejsu użytkownika administratora Ranger pod adresem https://CLUSTERNAME.azurehdinsight.net/Ranger/, gdzie CLUSTERNAME jest nazwą klastra.

    Uwaga

    Usługa Ranger używa różnych poświadczeń niż klaster Apache Hadoop. Aby uniemożliwić przeglądarkom używanie buforowanych poświadczeń usługi Hadoop, użyj nowego okna przeglądarki InPrivate, aby nawiązać połączenie z interfejsem użytkownika administratora platformy Ranger.

  2. Zaloguj się przy użyciu nazwy użytkownika i hasła domeny administratora klastra:

    Zrzut ekranu przedstawiający stronę główną usługi HDInsight ESP Ranger.

    Obecnie Ranger działa tylko z Yarn i Hive.

Tworzenie użytkowników domeny

Aby uzyskać informacje na temat tworzenia hiveruser1 i hiveuser2, zobacz Tworzenie klastra usługi HDInsight przy użyciu ESP. W tym artykule użyto dwóch kont użytkowników.

Tworzenie zasad platformy Ranger

W tej sekcji utworzysz dwie zasady platformy Ranger na potrzeby uzyskiwania dostępu do usługi hivesampletable. Nadasz uprawnienie wyboru dla różnych zestawów kolumn. Obaj użytkownicy zostali utworzeni przy użyciu Create a HDInsight cluster with ESP. W następnej sekcji przetestujesz dwie zasady w programie Excel.

Aby utworzyć zasady Ranger:

  1. Otwórz interfejs użytkownika administratora platformy Ranger. Zobacz poprzednią sekcję Connect to Apache Ranger Admin UI (Łączenie z interfejsem użytkownika administratora platformy Apache Ranger).

  2. W obszarze Hive wybierz CLUSTERNAME_Hive. Zobaczysz dwie wstępnie skonfigurowane zasady.

  3. Wybierz pozycję Dodaj nowe zasady , a następnie wprowadź następujące wartości:

    Majątek Wartość
    Nazwa Polityki odczyt-hivesampletable-wszystko
    Baza danych Programu Hive domyślna
    stół hivesampletable
    Kolumna Hive *
    Select User (Wybierz użytkownika) hiveuser1
    Uprawnienia Wybierz

    Zrzut ekranu przedstawiający zasady Hive usługi Ranger w HDInsight ESP do skonfigurowania. .

    Uwaga

    Jeśli użytkownik domeny nie pojawi się w obszarze Wybierz użytkownika, zaczekaj chwilę, aż system Ranger zsynchronizuje się z Microsoft Entra ID.

  4. Wybierz pozycję Dodaj , aby zapisać zasady.

  5. Powtórz dwa ostatnie kroki, aby utworzyć kolejne zasady z następującymi właściwościami:

    Majątek Wartość
    Nazwa Polityki read-hivesampletable-devicemake
    Baza danych Programu Hive domyślna
    stół hivesampletable
    Kolumna Hive clientid, devicemake
    Select User (Wybierz użytkownika) hiveuser2
    Uprawnienia Wybierz

Tworzenie źródła danych HIVe ODBC

Aby uzyskać instrukcje dotyczące tworzenia źródła danych ODBC programu Hive, zobacz Tworzenie źródła danych Hive ODBC.

Majątek Opis
Nazwa źródła danych Nadaj nazwę źródłu danych.
Gospodarz Wprowadź CLUSTERNAME.azurehdinsight.net. Na przykład użyj myHDICluster.azurehdinsight.net.
Port Użyj portu 443. (Ten port zmienił się z 563 na 443).
Baza danych Użyj wartości domyślnej.
Typ serwera Hive Wybierz pozycję Hive Server 2.
Mechanizm Wybierz pozycję Azure HDInsight Service.
HTTP Path (Ścieżka HTTP) Pozostaw puste.
Nazwa użytkownika Wprowadź hiveuser1@contoso158.onmicrosoft.com. Zaktualizuj nazwę domeny, jeśli jest inna.
Hasło Wprowadź hasło dla hiveuser1.

Wybierz pozycję Testuj przed zapisaniem źródła danych.

Importowanie danych do programu Excel z usługi HDInsight

W ostatniej sekcji skonfigurowano dwie zasady: hiveuser1 ma uprawnienie wyboru dla wszystkich kolumn i hiveuser2 ma uprawnienie wyboru dla dwóch kolumn. W tej sekcji personifikujesz dwóch użytkowników w celu zaimportowania danych do programu Excel.

  1. Otwórz nowy lub istniejący skoroszyt w programie Excel.

  2. Na karcie Dane przejdź do pozycji Pobierz dane>z innych źródeł>z ODBC, aby otworzyć okno From ODBC (OdBC).

    Zrzut ekranu przedstawiający kreatora połączenia danych.

  3. Z listy rozwijanej wybierz nazwę źródła danych utworzoną w ostatniej sekcji, a następnie wybierz przycisk OK.

  4. W przypadku pierwszego użycia zostanie otwarte okno dialogowe sterownika ODBC . Wybierz pozycję Windows z menu po lewej stronie. Następnie wybierz pozycję Połącz, aby otworzyć okno Nawigator .

  5. Poczekaj na otwarcie okna dialogowego Select Database and Table . Ten krok może potrwać kilka sekund.

  6. Wybierz pozycję hivesampletable>Dalej.

  7. Wybierz Zakończ

  8. W oknie dialogowym Importowanie danych można zmienić lub określić zapytanie. W tym celu wybierz pozycję Właściwości. Ten krok może potrwać kilka sekund.

  9. Wybierz kartę Definicja . Tekst polecenia to:

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

    Zgodnie ze zdefiniowanymi hiveuser1 zasadami platformy Ranger ma uprawnienie do wyboru dla wszystkich kolumn. To zapytanie działa z poświadczeniami dla hiveuser1elementu , ale to zapytanie nie działa z poświadczeniami dla elementu hiveuser2.

  10. Wybierz przycisk OK , aby zamknąć okno dialogowe Właściwości połączenia .

  11. Wybierz przycisk OK , aby zamknąć okno dialogowe Importowanie danych .

  12. Wprowadź ponownie hasło, hiveuser1 a następnie wybierz przycisk OK. Importowanie danych do programu Excel trwa kilka sekund. Po zakończeniu zobaczysz 11 kolumn danych.

Aby przetestować drugą zasadę (read-hivesampletable-devicemake), którą utworzyłeś w ostatniej sekcji:

  1. Dodaj nowy arkusz w programie Excel.

  2. Wykonaj ostatnią procedurę, aby zaimportować dane. Jedyną zmianą, którą wprowadzasz, jest użycie poświadczeń hiveuser2 zamiast hiveuser1. Ta akcja kończy się niepowodzeniem, ponieważ hiveuser2 ma uprawnienia do wyświetlania tylko dwóch kolumn. Zostanie wyświetlony następujący błąd:

    [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. Wykonaj tę samą procedurę, aby zaimportować dane. Tym razem użyj poświadczeń dla hiveuser2 oraz zmodyfikuj instrukcję SELECT z:

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

    Do:

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

    Po zakończeniu zobaczysz dwie kolumny zaimportowanych danych.

Następne kroki