Настройка политик Apache Hive в HDInsight с Корпоративным пакетом безопасности

Из этой статьи вы узнаете, как настроить политики Apache Ranger для Apache Hive. Вы создаете две политики Ranger, чтобы ограничить доступ к ней hivesampletable. Поставляется hivesampletable с кластерами HDInsight. После настройки политик используйте драйвер Excel и Open Database Подключение ivity (ODBC) для подключения к таблицам Hive в HDInsight.

Необходимые компоненты

  • Кластер HDInsight с корпоративным пакетом безопасности (ESP). Дополнительные сведения см. в разделе "Настройка кластеров HDInsight с помощью ESP".
  • Рабочая станция, на которой установлены приложения Microsoft 365 для предприятий, Office 2016, Office 2013 профессиональный плюс, Excel 2013 автономный или Office 2010 профессиональный плюс.

Подключение в пользовательский интерфейс Apache Ranger Администратор

Чтобы подключиться к пользовательскому интерфейсу Ranger Администратор:

  1. В браузере перейдите в пользовательский интерфейс Ranger Администратор, где https://CLUSTERNAME.azurehdinsight.net/Ranger/CLUSTERNAME находится имя кластера.

    Примечание.

    Ranger использует учетные данные, отличающиеся от учетных данных кластера Apache Hadoop. Чтобы запретить браузерам использовать кэшированные учетные данные Hadoop, используйте новое окно браузера InPrivate для подключения к пользовательскому интерфейсу Ranger Администратор.

  2. Войдите с помощью имени пользователя и пароля домена администратора кластера:

    Screenshot that shows the HDInsight ESP Ranger home page.

    В настоящее время Ranger работает только с Yarn и Hive.

Создание пользователей домена

Сведения о создании и hiveuser2создании hiveruser1 кластера HDInsight с помощью ESP см. в статье "Создание кластера HDInsight". В этой статье вы используете эти две учетные записи.

Создание политик Ranger

В этом разделе описано, как создать две политики Ranger для доступа hivesampletable. Вы предоставляете разрешение на выбор различных наборов столбцов. Оба пользователя были созданы с помощью создания кластера HDInsight с помощью ESP. В следующем разделе описано, как протестировать две политики в Excel.

Чтобы создать политики Ranger, выполните приведенные действия.

  1. Откройте пользовательский интерфейс администратора Ranger. См. предыдущий раздел, Подключение в пользовательский интерфейс Apache Ranger Администратор.

  2. В разделе Hive выберите CLUSTERNAME_Hive. Вы увидите две предварительно настроенные политики.

  3. Щелкните Добавить новую политику, а затем введите следующие значения.

    Свойство Значение
    Имя политики read-hivesampletable-all
    База данных Hive default
    table hivesampletable
    Столбец куста *
    Выбор пользователя hiveuser1
    Разрешения select

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

    Примечание.

    Если пользователь домена не заполнен в разделе "Выбор пользователя", подождите несколько минут, пока Ranger будет синхронизироваться с идентификатором Microsoft Entra ID.

  4. Щелкните Добавить, чтобы сохранить политику.

  5. Повторите последние два шага, чтобы создать еще одну политику со следующими свойствами.

    Свойство Значение
    Имя политики read-hivesampletable-devicemake
    База данных Hive default
    table hivesampletable
    Столбец Hive clientid, devicemake
    Выбор пользователя hiveuser2
    Разрешения select

Создание источника данных Hive ODBC

Инструкции по созданию источника данных Hive ODBC см. в статье "Создание источника данных ODBC Hive".

Свойство Description
Имя источника данных Присвойте источнику данных имя.
Хост Введите CLUSTERNAME.azurehdinsight.net. Например, используйте myHDICluster.azurehdinsight.net.
Порт Используйте 443. (Этот порт изменился с 563 на 443.)
База данных Используйте значение по умолчанию.
Тип сервера Hive Выберите Hive Server 2.
Механизм Выберите службу Azure HDInsight.
Путь HTTP Оставьте его пустым.
Имя пользователя Введите hiveuser1@contoso158.onmicrosoft.com. Обновите имя домена, если оно отличается.
Пароль Введите пароль для hiveuser1.

Выберите "Тест" , прежде чем сохранить источник данных.

Импорт данных в Excel из службы HDInsight

В последнем разделе вы настроили две политики: hiveuser1 имеет разрешение выбора для всех столбцов и hiveuser2 имеет разрешение на выбор двух столбцов. В этом разделе вы выполните олицетворение двух пользователей для импорта данных в Excel.

  1. Откройте новую или существующую рабочую книгу в Excel.

  2. На вкладке "Данные" перейдите к разделу "Получить данные>из других источников из ODBC">, чтобы открыть окно "Из ODBC".

    Screenshot that shows the Open data connection wizard.

  3. В раскрывающемся списке выберите имя источника данных, созданное в последнем разделе, и нажмите кнопку "ОК".

  4. Для первого использования откроется диалоговое окно драйвера ODBC. В меню слева выберите пункт Windows. Затем нажмите кнопку Подключиться, чтобы открыть окно Навигатор.

  5. Подождите открытие диалогового окна Выбор базы данных и таблицы . Это может занять несколько секунд.

  6. Выберите hivesampletable>Next.

  7. Выберите Готово.

  8. В диалоговом окне Импорт данных можно изменить или указать запрос. Для этого выберите Свойства. Это может занять несколько секунд.

  9. Перейдите на вкладку Определение. Текст команды:

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

    Определяемые вами политики hiveuser1 Ranger имеют разрешение на выбор всех столбцов. Этот запрос работает с учетными данными, hiveuser1но этот запрос не работает с учетными данными.hiveuser2

  10. Нажмите кнопку "ОК", чтобы закрыть диалоговое окно свойств Подключение ion.

  11. Нажмите ОК, чтобы закрыть диалоговое окно Импорт данных.

  12. Повторно введите пароль hiveuser1 и нажмите кнопку "ОК". Это займет несколько секунд, прежде чем данные импортируются в Excel. По завершении вы увидите 11 столбцов данных.

Чтобы проверить вторую политику (read-hivesampletable-devicemake), созданную в последнем разделе:

  1. Добавьте новый лист в Excel.

  2. Выполните последнюю процедуру для импорта данных. Единственное изменение заключается в том, чтобы использовать учетные данные вместо hiveuser2hiveuser1. Это действие завершается ошибкой, так как hiveuser2 имеет разрешение на просмотр только двух столбцов. Возникла следующая ошибка:

    [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. Выполните ту же процедуру для импорта данных. На этот раз используйте учетные данные и hiveuser2 измените инструкцию select из:

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

    Кому:

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

    По завершении вы увидите два столбца импортированных данных.

Следующие шаги