Перейти к концу метаданных
Переход к началу метаданных

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 5 Следующий »

Если для набора данных не определена ни одна RLS-роль, пользователь может просматривать все данные этого набора. Если же для данного набора создана хотя бы одна RLS-роль, то пользователь увидит сообщение об ошибке, если ему не присвоена никакая RLS-роль.

При использовании динамической модели RLS вам необходимо настроить атрибуты пользователя в Keycloak, а затем использовать значения этих атрибутов либо по отдельности, либо в качестве массива при создании правил доступа. Для использования отдельных значений применяется функция USERATTRIBUTE, а при необходимости использования нескольких значений атрибутов применяется функция USERATTRIBUTEASARRAY. Ниже подробное описание процесса создания правил доступа с использованием этих функций.

Создание правил доступа с использованием функции USERATTRIBUTE

 Создание правил доступа с использованием функции USERATTRIBUTE

Для настройки атрибутов пользователей необходимо выполнить следующие шаги:

  1. Откройте Keycloak, введя соответствующий адрес в адресной строке браузера:
    <domain>/v3/keycloak
    где <domain> – адрес вашего сервера.

  2. Откройте консоль администратора и в боковой панели нажмите Users:

    keycloak-users.png

  3. Выберите пользователя, для которого будут создаваться RLS-роли. В нашем примере это будет пользователь ivanov:

    user.png

  4. В открывшемся окне перейдите на вкладку Attributes и нажмите Add an attribute, чтобы добавить атрибут:

    attribute.png

  5. В поле Key укажите уникальный ключ атрибута, например City, а в поле Value укажите его значение. В нашем примере это будет город Москва:

    city.png
  6. Нажмите Save для сохранения изменений.

  7. Перейдите в требуемую рабочую область и откройте набор данных, для которого вы хотите создать роли безопасности. В нашем примере это будет Продажи:

    select-dataset.png
  8. В открывшемся окне нажмите Данные > Роли безопасности:

    menu.png
  9. В появившемся окне нажмите кнопку с крестиком для создания роли:

    create.png

  10. Переименуйте созданную роль. Мы переименовали в Москва:

    moscow.png
  11. Для назначения роли пользователю нажмите кнопку справа от названия роли:

    click-button2.png

  12. В строке поиска начните вводить имя пользователям (в нашем случае ivanov):

    find-user.png

  13. Выберите найденного пользователя и нажмите Назначить. Пользователю будет назначена созданная роль, о чём система проинформирует вас:

    assign-user.png

  14. Кликните название созданной роли в левой стороне диалогового окна. Отобразится список таблиц набора данных, с которым вы работаете:

    table-list2.png

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

    cities.png

  16. В поле справа от списка таблиц введите выражение DAX фильтра таблицы. В нашем примере мы хотим, чтобы пользователь Иванов, у которого в рабочей области Филиалы CreativeElectronix роль Зритель, мог просматривать только те данные, которые относятся к городу Москва. Для этого мы введем следующее выражение:
    'Города' [City] = USERATTRIBUTE ("Москва")

    formula.png


    Данный запрос вернёт все строки из таблицы Города, в которых столбец City содержит значение Москва.

  17. Нажмите Сохранить DAX в правом нижнем углу.

Теперь, при работе с набором данных Продажи, пользователь Иванов будет иметь доступ только к тем данным, которые относятся к городу Москве:

dynamic-final.png

Создание правил доступа с использованием функции USERATTRIBUTEASARRAY

 Нажмите здесь для раскрытия...

Для настройки атрибутов пользователей необходимо выполнить следующие шаги:

  1. Откройте Keycloak, введя соответствующий адрес в адресной строке браузера:
    <domain>/v3/keycloak
    где <domain> – адрес вашего сервера.

  2. Откройте консоль администратора и в боковой панели нажмите Users:

    keycloak-users.png

  3. Выберите пользователя, для которого будут создаваться RLS-роли. В нашем примере это будет пользователь ivanov:

    user.png

  4. В открывшемся окне перейдите на вкладку Attributes и нажмите Add an attribute, чтобы добавить атрибут:

    attribute.png

  5. В поле Key укажите уникальный ключ атрибута, например City, а в поле Value укажите его значение. В нашем примере это будет город Москва:

    city.png
  6. Нажмите Save для сохранения изменений.

  7. Перейдите в требуемую рабочую область и откройте набор данных, для которого вы хотите создать роли безопасности. В нашем примере это будет Продажи:

    select-dataset.png
  8. В открывшемся окне нажмите Данные > Роли безопасности:

    menu.png
  9. В появившемся окне нажмите кнопку с крестиком для создания роли:

    create.png

  10. Переименуйте созданную роль. Мы переименовали в Москва:

    moscow.png
  11. Для назначения роли пользователю нажмите кнопку справа от названия роли:

    click-button2.png

  12. В строке поиска начните вводить имя пользователям (в нашем случае ivanov):

    find-user.png

  13. Выберите найденного пользователя и нажмите Назначить. Пользователю будет назначена созданная роль, о чём система проинформирует вас:

    assign-user.png

  14. Кликните название созданной роли в левой стороне диалогового окна. Отобразится список таблиц набора данных, с которым вы работаете:

    table-list2.png

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

    cities.png

  16. В поле справа от списка таблиц введите выражение DAX фильтра таблицы. В нашем примере мы хотим, чтобы пользователь Иванов, у которого в рабочей области Филиалы CreativeElectronix роль Зритель, мог просматривать только те данные, которые относятся к городу Москва. Для этого мы введем следующее выражение:
    'Города' [City] = USERATTRIBUTE ("Москва")

    formula.png


    Данный запрос вернёт все строки из таблицы Города, в которых столбец City содержит значение Москва.

  17. Нажмите Сохранить DAX в правом нижнем углу.

Теперь, при работе с набором данных Продажи, пользователь Иванов будет иметь доступ только к тем данным, которые относятся к городу Москве:

dynamic-final.png


Смотрите также

📄 ссылка1
📄 ссылка2

На этой странице


🕑 Время чтения: 2 мин.


Видео

<вставка>


Нужна дополнительная помощь?

Свяжитесь с технической поддержкой.

  • Нет меток