Добавление атрибутов в виджет "Домик" для Insight 2.3+

Всем доброго времени суток. В данной статье мы рассмотрим процесс добавления и настройки пользовательских атрибутов в виджете “Домик” для версий Insight 2.3 и выше, работающих совместно с Keycloak версии 20+. Особенность данного процесса заключается в необходимости создания специальных клиентских областей и мапперов в Keycloak в связи с внедрением авторизации OAuth 2.0.

Особенности работы с атрибутами

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

  1. Режим редактора (Insight конструктор): система обращается к профилю пользователя-разработчика через виджет “Домик”.
  2. Режим плеера: система обращается к параметрам авторизационного контейнера через тот же компонент.

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

Пошаговая инструкция по добавлению атрибутов

Шаг 1: Выбор пользователя

Откройте административную консоль Keycloak и выберите пользователя, которому хотите присвоить атрибут.

Шаг 2: Добавление атрибута

Перейдите в атрибуты пользователя и добавьте новый атрибут с необходимым ключом и значением.

Шаг 3: Переход к клиентским областям

Откройте области клиента (Client Scopes) и нажмите кнопку “Создать область клиента”.

Шаг 4: Создание клиентской области

Создайте клиентскую область с типом “Default”.

Шаг 5: Создание маппера

В новой созданной области клиента перейдите в MapPers и нажмите “Создать”.

Шаг 6: Выбор типа маппера

В выпадающем списке найдите и выберите “User Attribute”.

Шаг 7: Настройка маппера

Создайте маппер, указав:

  • Название (Name)
  • Имя атрибута в поле User Attribute
  • Имя клейма в Token Claim Name

Важно: Правильно выберите Claim JSON Type в зависимости от значения атрибута:

  • Для текста: string
  • Для целых чисел: int
  • Для булевых значений: boolean

Шаг 8: Привязка области к клиенту

Добавьте созданную область клиенту, указанному в файле worker.json контейнера editor (обычно это клиент “player”).

image

Процесс добавления клиентской области:

Проверка настройки

После выполнения всех шагов атрибут должен появиться в списке доступных переменных виджета “Домик”.

Если атрибут не отображается, проверьте:

  • Корректность настройки атрибута для всех задействованных пользователей
  • Правильность создания и настройки клиентской области
  • Корректность настройки маппера
  • Успешность привязки клиентской области к нужному клиенту

Удачи в настройке атрибутов!

1 лайк