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. Zestaw hivesampletable jest dostarczany z klastrami usługi HDInsight. Po skonfigurowaniu zasad użyjesz sterownika Open Database Połączenie ivity (ODBC) programu Excel i programu Hive w celu nawiązania połączenia z tabelami programu Hive w usłudze HDInsight.

Wymagania wstępne

Połączenie do interfejsu użytkownika platformy Apache Ranger Administracja

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

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

    Uwaga

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

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

    Screenshot that shows the HDInsight ESP Ranger home page.

    Obecnie platforma Ranger współpracuje tylko z usługami Yarn i Hive.

Tworzenie użytkowników domeny

Aby uzyskać informacje na temat tworzenia hiveruser1 klastra 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 polecenia Create a HDInsight cluster with ESP (Tworzenie klastra usługi HDInsight przy użyciu esp). W następnej sekcji przetestujesz dwie zasady w programie Excel.

Aby utworzyć zasady platformy Ranger:

  1. Otwórz interfejs użytkownika administratora platformy Ranger. Zobacz poprzednią sekcję, Połączenie do interfejsu użytkownika platformy Apache Ranger Administracja.

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

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

    Właściwości Wartość
    Policy Name (Nazwa zasad) read-hivesampletable-all
    Baza danych Programu Hive domyślna
    table hivesampletable
    Kolumna Hive *
    Select User (Wybierz użytkownika) hiveuser1
    Uprawnienia select

    Screenshot that shows the HDInsight ESP Ranger Hive policies to configure. .

    Uwaga

    Jeśli użytkownik domeny nie zostanie wypełniony w obszarze Wybierz użytkownika, zaczekaj chwilę, aż program Ranger zsynchronizuje się z identyfikatorem Entra firmy Microsoft.

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

  5. Powtórz dwa ostatnie kroki, aby utworzyć inne zasady o następujących właściwościach:

    Właściwości Wartość
    Policy Name (Nazwa zasad) read-hivesampletable-devicemake
    Baza danych Programu Hive domyślna
    table hivesampletable
    Kolumna Hive clientid, devicemake
    Select User (Wybierz użytkownika) hiveuser2
    Uprawnienia select

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.

Właściwości opis
Nazwa źródła danych Nadaj nazwę źródle 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 Default (Domyślna).
Hive Server Type (Typ serwera Hive) Wybierz pozycję Hive Server 2.
Mechanizm Wybierz pozycję Azure HDInsight Service.
HTTP Path (Ścieżka HTTP) Pozostaw to pole 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 będziesz personifikować 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).

    Screenshot that shows the Open data connection wizard.

  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 Połączenie, aby otworzyć okno Nawigator.

  5. Zaczekaj na otwarcie okna dialogowego Wybieranie bazy danych i tabeli. Ten krok może potrwać kilka sekund.

  6. Wybierz pozycję hivesampletable>Dalej.

  7. Wybierz Zakończ.

  8. W oknie dialogowym Importowanie danych możesz 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łączenie ion.

  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ć drugie zasady (read-hivesampletable-devicemake), które zostały utworzone w ostatniej sekcji:

  1. Dodaj nowy arkusz w programie Excel.

  2. Wykonaj kroki ostatniej procedury, 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 kroki tej samej procedury, aby zaimportować dane. Tym razem użyj poświadczeń dla hiveuser2 polecenia , a także 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