Mengonfigurasi kebijakan Apache Hive di HDInsight dengan Paket Keamanan Perusahaan

Dalam artikel ini, Anda mempelajari cara mengonfigurasi kebijakan Apache Ranger untuk Apache Hive. Anda membuat dua kebijakan Ranger untuk membatasi akses ke hivesampletable. Dilengkapi hivesampletable dengan kluster HDInsight. Setelah mengonfigurasi kebijakan, Anda menggunakan driver Excel dan Open Database Koneksi ivity (ODBC) untuk menyambungkan ke tabel Apache Hive di HDInsight.

Prasyarat

  • Kluster HDInsight dengan Paket Keamanan Perusahaan (ESP). Untuk informasi selengkapnya, lihat Mengonfigurasi kluster HDInsight dengan ESP.
  • Stasiun kerja dengan aplikasi Microsoft 365 untuk perusahaan, Office 2016, Office 2013 Professional Plus, Excel 2013 Standalone, atau Office 2010 Professional Plus.

Koneksi ke UI Admin Apache Ranger

Untuk menyambungkan ke antarmuka pengguna (UI) Ranger Admin:

  1. Dari browser, buka UI Admin Ranger di https://CLUSTERNAME.azurehdinsight.net/Ranger/ mana CLUSTERNAME adalah nama kluster Anda.

    Catatan

    Ranger menggunakan info masuk yang berbeda dari kluster Apache Hadoop. Untuk mencegah browser dengan menggunakan kredensial Hadoop yang di-cache, gunakan jendela browser InPrivate baru untuk menyambungkan ke UI Admin Ranger.

  2. Masuk dengan menggunakan nama pengguna dan kata sandi domain administrator kluster:

    Screenshot that shows the HDInsight ESP Ranger home page.

    Saat ini, Ranger hanya bekerja dengan Yarn dan Apache Hive.

Membuat pengguna domain

Untuk informasi tentang cara membuat hiveruser1 dan , lihat Membuat kluster HDInsight dengan ESPhiveuser2. Anda menggunakan dua akun pengguna di artikel ini.

Membuat kebijakan Ranger

Di bagian ini, Anda membuat dua kebijakan Ranger untuk mengakses hivesampletable. Anda memberikan izin pilih pada kumpulan kolom yang berbeda. Kedua pengguna dibuat dengan menggunakan Buat kluster HDInsight dengan ESP. Di bagian berikutnya, Anda menguji dua kebijakan di Excel.

Untuk membuat kebijakan Ranger:

  1. Buka Admin antarmuka pengguna Ranger. Lihat bagian sebelumnya, Koneksi ke Apache Ranger Admin UI.

  2. Di bawah Apache Hive, pilih CLUSTERNAME_Hive. Anda melihat dua kebijakan yang telah dikonfigurasi sebelumnya.

  3. Pilih Tambahkan Kebijakan Baru dan masukkan nilai berikut ini:

    Properti Nilai
    Nama Kebijakan read-hivesampletable-all
    Database Apache Hive Default
    tabel hivesampletable
    Kolom Apache Hive *
    Pilih Pengguna hiveuser1
    Izin pilih

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

    Catatan

    Jika pengguna domain tidak diisi di Pilih Pengguna, tunggu beberapa saat agar Ranger disinkronkan dengan ID Microsoft Entra.

  4. Pilih Tambahkan untuk menyimpan kebijakan.

  5. Ulangi dua langkah terakhir untuk membuat kebijakan lain dengan properti berikut ini:

    Properti Nilai
    Nama Kebijakan read-hivesampletable-devicemake
    Database Apache Hive Default
    tabel hivesampletable
    Kolom Apache Hive clientid, devicemake
    Pilih Pengguna hiveuser2
    Izin pilih

Membuat sumber data ODBC Apache Hive

Untuk instruksi tentang cara membuat sumber data ODBC Apache Hive, lihat Membuat sumber data ODBC Apache Hive.

Properti Deskripsi
Nama Sumber Data Berikan nama ke sumber data Anda.
Host Masukkan CLUSTERNAME.azurehdinsight.net. Misalnya, gunakan myHDICluster.azurehdinsight.net.
Port Gunakan 443. (Port ini berubah dari 563 menjadi 443.)
Database Gunakan Default.
Jenis Server Apache Hive Pilih Apache Hive Server 2.
Mekanisme Pilih Azure HDInsight Service.
Jalur HTTP Biarkan kosong.
Nama Pengguna Memasuki hiveuser1@contoso158.onmicrosoft.com. Perbarui nama domain jika nama domain-nya berbeda.
Kata sandi Masukkan kata sandi untuk hiveuser1.

Pilih Uji sebelum Anda menyimpan sumber data.

Mengimpor data ke Excel dari Microsoft Azure HDInsight

Di bagian terakhir, Anda mengonfigurasi dua kebijakan: hiveuser1 memiliki izin pilih pada semua kolom, dan hiveuser2 memiliki izin pilih pada dua kolom. Di bagian ini, Anda akan meniru dua pengguna untuk mengimpor data ke Excel.

  1. Buka buku kerja baru atau yang sudah ada di Excel.

  2. Pada tab Data, buka Dapatkan Data>Dari Sumber>Lain Dari ODBC untuk membuka jendela Dari ODBC.

    Screenshot that shows the Open data connection wizard.

  3. Dari daftar dropdown, pilih nama sumber data yang Anda buat di bagian terakhir lalu pilih OK.

  4. Untuk penggunaan pertama, dialog driver ODBC terbuka. Pilih Windows dari menu di sebelah kiri. Kemudian pilih Hubungkan untuk membuka jendela Navigator.

  5. Tunggu hingga dialog Pilih Database dan Tabel terbuka. Langkah ini bisa memakan waktu beberapa detik.

  6. Pilih hivesampletable>Berikutnya.

  7. Pilih Selesai.

  8. Dalam dialog Impor Data, Anda dapat mengubah atau menentukan kueri. Untuk melakukannya, pilih Properti. Langkah ini bisa memakan waktu beberapa detik.

  9. Pilih tab Definisi. Teks perintahnya adalah:

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

    Menurut kebijakan Ranger yang Anda tentukan, hiveuser1 telah memilih izin pada semua kolom. Kueri ini berfungsi dengan kredensial untuk hiveuser1, tetapi kueri ini tidak berfungsi dengan kredensial untuk hiveuser2.

  10. Pilih OK untuk menutup dialog Properti Koneksi ion.

  11. Pilih OK untuk menutup dialog Impor Data.

  12. Masukkan kembali kata sandi untuk hiveuser1 lalu pilih OK. Dibutuhkan beberapa detik sebelum data diimpor ke Excel. Setelah selesai, Anda akan melihat 11 kolom data.

Untuk menguji kebijakan kedua (read-hivesampletable-devicemake) yang Anda buat di bagian terakhir:

  1. Tambahkan lembar baru di Excel.

  2. Ikuti prosedur terakhir untuk mengimpor data. Satu-satunya perubahan yang Anda buat adalah menggunakan kredensial untuk hiveuser2 alih-alih hiveuser1. Tindakan ini gagal karena hiveuser2 memiliki izin untuk melihat hanya dua kolom. Anda melihat kesalahan berikut:

    [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. Ikuti prosedur yang sama untuk mengimpor data. Kali ini, gunakan kredensial untuk hiveuser2 dan juga ubah pernyataan pilih dari:

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

    Kepada:

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

    Setelah selesai, Anda akan melihat dua kolom data yang diimpor.

Langkah berikutnya