Платформа 3V/Отчет/6. Дополнительные действия в отчете/Фильтр выпадающих списков/Фильтр от значений атрибута из токена пользователя: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
Строка 1: Строка 1:
 
{{DISPLAYTITLE:Фильтрация справочников от значений атрибута из токена пользователя}}
 
{{DISPLAYTITLE:Фильтрация справочников от значений атрибута из токена пользователя}}
 
+
Для фильтрации справочников в отчёте от значений атрибута из токена пользователя:
Для фильтрации справочников в отчёте от значений атрибута из токена пользователя необходимо настроить атрибут маппинг вашего атрибута в в для пользователя или роли, а затем использовать операнд на атрибуте токена [http://ссылканаTokenAttributeFormulaOperandDto] в фильтре справочника по формуле [http://ссылканаFormulaConditionalDictionaryFilterDto].
+
# Необходимо добавить пользовательский атрибут в токен [https://medium.com/@ravthiru/keycloak-retrieve-custom-attributes-in-access-token-1a2d5aef0caa Настройка пользовательского атрибута в Keycloak]
 +
# Заполнить значение атрибута для пользователя или роли [[#Настройка значений атрибута пользователя в KeyCloak]]
 +
# Использовать операнд на атрибуте токена [http://ссылканаTokenAttributeFormulaOperandDto] в фильтре справочника по формуле [http://ссылканаFormulaConditionalDictionaryFilterDto].
  
 
== Настройка фильтрации справочника в отчет по значению атрибута из токена ==
 
== Настройка фильтрации справочника в отчет по значению атрибута из токена ==

Версия 13:46, 30 сентября 2020

Для фильтрации справочников в отчёте от значений атрибута из токена пользователя:

  1. Необходимо добавить пользовательский атрибут в токен Настройка пользовательского атрибута в Keycloak
  2. Заполнить значение атрибута для пользователя или роли #Настройка значений атрибута пользователя в KeyCloak
  3. Использовать операнд на атрибуте токена [1] в фильтре справочника по формуле [2].

Настройка фильтрации справочника в отчет по значению атрибута из токена

  1. Для фильтрации справочника по значению атрибута из токена необходимо использовать фильтра на формуле FormulaConditionalDictionaryFilterDto [3].
  2. В качестве операнда будет использоваться операнд на атрибуте токена TokenAttributeFormulaOperandDto [4].

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

 1 {
 2 "filter": {
 3         "value": {
 4           "expression": "[0]",
 5           "operands": [
 6             {
 7               "attributeId": "test_attribute",
 8               "discriminator": "TokenAttributeFormulaOperandDto"
 9             }
10           ],
11           "discriminator": "FormulaDto"
12         },
13         "attributeId": 1,
14         "attribute": {
15           "Id": 1,
16           "discriminator": "OwnAttributeDefinitionDto"
17         },
18         "conditionType": "AttributeInCollection",
19         "inversion": false,
20         "conditionId": null,
21         "discriminator": "FormulaConditionalDictionaryFilterDto"
22       }
23 }

Настройка значений атрибута пользователя в KeyCloak

  1. В Keycloak выбираем в блоке "Manage" пункт "Users".
  2. Выбираем нужного пользователя.
  3. Во вкладке пользователя выбираем вкладку "Attributes".
  4. Добавляете атрибут и его значение.
Настройка значений атрибута пользователя в KeyCloak