Авторизация в Ranger с политиками Hive

Содержание

Плагин Ranger Trino может быть настроен для политик Hadoop SQL. В данной статье описывается, как провести настройку и протестировать данную возможность.

Настройка

  1. Активируйте плагин Ranger Hive.

  2. Активируйте плагин Ranger Trino со включенным параметром Hive SQL Support. Убедитесь, что значение поля ranger.plugin.hive.service.name совпадает с названием сервиса Hive в Ranger.

    Параметры плагина Ranger Trino
    Параметры плагина Ranger Trino
  3. Удалите политику all - catalog, schema, table, column для сервиса Trino в Ranger.

    Удаление политики в Trino
    Удаление политики в Trino
    Удаление политики в Trino
    Удаление политики в Trino
  4. Добавьте пользователя, который должен иметь возможность авторизации, в следующие политики Trino: all - trinouser, all - catalog, schema и all - queryid.

  5. В сервисе Hive создайте политику, позволяющую пользователю иметь доступ ко всем колонкам определенной таблицы в базе данных.

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

Проверка

Чтобы проверить корректность настройки, следуйте шагам ниже:

  1. На хосте кластера ADH выполните запрос с помощью Trino CLI:

    $ trino --execute 'select * from "hive-adh"."default"."solar_objects";'

    Ожидаемым результатом является содержимое таблицы:

    "1","Sun","1989100000","1392000"
    "2","Mercury","330","4879"
    "3","Venus","4867","12104"
    "4","Earth","5972","12742"
    "5","Mars","642","6780"
    "6","Jupiter","1898187","139822"
    "7","Saturn","568317","116464"
    "8","Uranus","86813","50724"
    "9","Neptune","102413","49244"
  2. Чтобы убедиться в корректности работы имперсонации, в веб-интерфейсе Ranger Admin откройте страницу Audits → Access и кликните на строку с вашим запросом.

    Страница Ranger Audits
    Страница Ranger Audits
    Страница Ranger Audits
    Страница Ranger Audits
Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней