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

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

Версия 14:04, 30 сентября 2020

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

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

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

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

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

 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