Share via


Självstudie: Konfigurera Apache HBase-principer i HDInsight med Enterprise Security Package

Lär dig hur du konfigurerar Apache Ranger-principer för Apache HBase-kluster med Enterprise Security Package (ESP). ESP-kluster är anslutna till en domän så att användare kan autentisera med autentiseringsuppgifter för domänen. I den här självstudien skapar du två Ranger-principer för att begränsa åtkomsten till olika kolumnserier i en HBase-tabell.

I den här självstudien lär du dig att:

  • Skapa domänanvändare.
  • Skapa Ranger-principer.
  • Skapa tabeller i ett HBase-kluster.
  • Testa Ranger-principer.

Innan du börjar

Anslut till Apache Ranger Admin-gränssnittet

  1. Från en webbläsare ansluter du till Ranger Admin-användargränssnittet (UI) med hjälp av URL:en https://<ClusterName>.azurehdinsight.net/Ranger/. Kom ihåg att ändra <ClusterName> till namnet på ditt HBase-kluster.

    Kommentar

    Ranger-autentiseringsuppgifter är inte samma som autentiseringsuppgifter för Hadoop-kluster. Om du vill förhindra att webbläsare använder cachade Hadoop-autentiseringsuppgifter använder du ett nytt InPrivate-webbläsarfönster för att ansluta till Ranger-administratörsgränssnittet.

  2. Logga in med dina autentiseringsuppgifter för Microsoft Entra-administratör. Autentiseringsuppgifterna för Microsoft Entra-administratören är inte samma som autentiseringsuppgifter för HDInsight-kluster eller autentiseringsuppgifter för Linux HDInsight-noden Secure Shell (SSH).

Skapa domänanvändare

Information om hur du skapar sales_user1 och marketing_user1 domänanvändare finns i Skapa ett HDInsight-kluster med Enterprise Security Package. I ett produktionsscenario kommer domänanvändarna från din Active Directory-klientorganisation.

Skapa HBase-tabeller och importera exempeldata

Du kan använda SSH för att ansluta till HBase-kluster och sedan använda Apache HBase Shell för att skapa HBase-tabeller, infoga data och köra frågor mot data. Mer information finns i Use SSH with HDInsight (Använda SSH med HDInsight).

Använda HBase-gränssnittet

  1. Från SSH kör du följande HBase-kommando:

    hbase shell
    
  2. Skapa en HBase-tabell Customers med två kolumnfamiljer: Name och Contact.

    create 'Customers', 'Name', 'Contact'
    list
    
  3. Infoga data:

    put 'Customers','1001','Name:First','Alice'
    put 'Customers','1001','Name:Last','Johnson'
    put 'Customers','1001','Contact:Phone','333-333-3333'
    put 'Customers','1001','Contact:Address','313 133rd Place'
    put 'Customers','1001','Contact:City','Redmond'
    put 'Customers','1001','Contact:State','WA'
    put 'Customers','1001','Contact:ZipCode','98052'
    put 'Customers','1002','Name:First','Robert'
    put 'Customers','1002','Name:Last','Stevens'
    put 'Customers','1002','Contact:Phone','777-777-7777'
    put 'Customers','1002','Contact:Address','717 177th Ave'
    put 'Customers','1002','Contact:City','Bellevue'
    put 'Customers','1002','Contact:State','WA'
    put 'Customers','1002','Contact:ZipCode','98008'
    
  4. Visa tabellens innehåll:

    scan 'Customers'
    

    Screenshot that shows the HDInsight Hadoop HBase shell output.

Skapa Ranger-principer

Skapa en Ranger-princip för sales_user1 och marketing_user1.

  1. Öppna Ranger-administratörsanvändargränssnittet. Under HBase väljer du <ClusterName>_hbase.

    Screenshot that shows the HDInsight Apache Ranger Admin UI.

  2. skärmen Lista över principer visas alla Ranger-principer som skapats för det här klustret. En förkonfigurerad princip kan visas. Välj Lägg till ny princip.

    Screenshot that shows the Apache Ranger HBase policies list.

  3. På skärmen Skapa princip anger du följande värden:

    Inställning Föreslaget värde
    Principnamn sales_customers_name_contact
    HBase-tabell Kunder
    HBase-kolumnserie Namn, Kontakt
    HBase-kolumn *
    Välj grupp
    Välj användare sales_user1
    Behörigheter Lästa

    Följande jokertecken kan användas i ämnesnamnet:

    • * anger noll eller flera förekomster av tecken.
    • ? anger ett enskilt tecken.

    Screenshot that shows the Apache Ranger policy Create sales.

    Kommentar

    Vänta en stund tills Ranger synkroniserar med Microsoft Entra-ID om en domänanvändare inte fylls i automatiskt för Välj användare.

  4. Välj Lägg till för att spara principen.

  5. Välj Lägg till ny princip och ange sedan följande värden:

    Inställning Föreslaget värde
    Principnamn marketing_customers_contact
    HBase-tabell Kunder
    HBase-kolumnserie Kontaktperson
    HBase-kolumn *
    Välj grupp
    Välj användare marketing_user1
    Behörigheter Lästa

    Screenshot that shows the Apache Ranger policy Create marketing.

  6. Välj Lägg till för att spara principen.

Testa Ranger-principerna

Baserat på de Ranger-principer som konfigurerats kan sales_user1 visa alla data för kolumnerna i både kolumnfamiljerna Name och Contact . Marketing_user1 kan endast visa data i kolumnfamiljenContact.

Komma åt data som sales_user1

  1. Öppna en ny SSH-anslutning till klustret. Använd följande kommando för att logga till klustret:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. kinit Använd kommandot för att ändra till kontexten för den önskade användaren:

    kinit sales_user1
    
  3. Öppna HBase-gränssnittet och skanna tabellen Customers:

    hbase shell
    scan `Customers`
    
  4. Observera att försäljningsanvändaren kan visa alla kolumner i Customers tabellen. Användaren kan se de två kolumnerna i kolumnfamiljen Name och de fem kolumnerna i kolumnfamiljen Contact .

    ROW                                COLUMN+CELL
     1001                              column=Contact:Address, timestamp=1548894873820, value=313 133rd Place
     1001                              column=Contact:City, timestamp=1548895061523, value=Redmond
     1001                              column=Contact:Phone, timestamp=1548894871759, value=333-333-3333
     1001                              column=Contact:State, timestamp=1548895061613, value=WA
     1001                              column=Contact:ZipCode, timestamp=1548895063111, value=98052
     1001                              column=Name:First, timestamp=1548894871561, value=Alice
     1001                              column=Name:Last, timestamp=1548894871707, value=Johnson
     1002                              column=Contact:Address, timestamp=1548894899174, value=717 177th Ave
     1002                              column=Contact:City, timestamp=1548895103129, value=Bellevue
     1002                              column=Contact:Phone, timestamp=1548894897524, value=777-777-7777
     1002                              column=Contact:State, timestamp=1548895103231, value=WA
     1002                              column=Contact:ZipCode, timestamp=1548895104804, value=98008
     1002                              column=Name:First, timestamp=1548894897419, value=Robert
     1002                              column=Name:Last, timestamp=1548894897487, value=Stevens
    2 row(s) in 0.1000 seconds
    

Komma åt data som marketing_user1

  1. Öppna en ny SSH-anslutning till klustret. Använd följande kommando för att logga in som marketing_user1:

    ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
    
  2. kinit Använd kommandot för att ändra till kontexten för vår önskade användare:

    kinit marketing_user1
    
  3. Öppna HBase-gränssnittet och skanna tabellen Customers:

    hbase shell
    scan `Customers`
    
  4. Observera att marknadsföringsanvändaren endast kan visa de fem kolumnerna i kolumnserien Contact.

    ROW                                COLUMN+CELL
     1001                              column=Contact:Address, timestamp=1548894873820, value=313 133rd Place
     1001                              column=Contact:City, timestamp=1548895061523, value=Redmond
     1001                              column=Contact:Phone, timestamp=1548894871759, value=333-333-3333
     1001                              column=Contact:State, timestamp=1548895061613, value=WA
     1001                              column=Contact:ZipCode, timestamp=1548895063111, value=98052
     1002                              column=Contact:Address, timestamp=1548894899174, value=717 177th Ave
     1002                              column=Contact:City, timestamp=1548895103129, value=Bellevue
     1002                              column=Contact:Phone, timestamp=1548894897524, value=777-777-7777
     1002                              column=Contact:State, timestamp=1548895103231, value=WA
     1002                              column=Contact:ZipCode, timestamp=1548895104804, value=98008
    2 row(s) in 0.0730 seconds
    
  5. Granska åtkomsthändelserna i Ranger-användargränssnittet.

    Screenshot that shows the HDInsight Ranger UI Policy Audit.

Rensa resurser

Om du inte kommer att fortsätta att använda det här programmet tar du bort HBase-klustret som du skapade:

  1. Logga in på Azure-portalen.
  2. I sökrutanhögst upp anger du HDInsight.
  3. Under Tjänster väljer du HDInsight-kluster.
  4. I listan över HDInsight-kluster som visas väljer du ... bredvid klustret som du skapade för den här självstudien.
  5. Välj Ta bort>Ja.

Nästa steg