Атрибутивный доступ

Материал из 3v-wiki
Перейти к навигации Перейти к поиску

Атрибутивный доступ - доступ к элементам справочника по значению пользовательского атрибута из токена.

Для использования атрибутивного доступа к элементам справочника:

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

Настройка доступа на элементы справочника по атрибуту справочника

В модели справочника у каждого атрибута есть UserAttributePermissions.

 1  
 2 {
 3   ...
 4   "dictionaryStructure": {
 5     "attributes": [  
 6       {
 7         ...
 8         "userAttributePermissions": {
 9           "userAttributeId": "test_attribute",
10           "permissions": "Read"
11         }
12       },
13       ...
14     ]
15   }
16   ...
17 }

UserAttributeId - строковый идентификатор пользовательского атрибута из токена.
Permissions - права доступа на элементы справочника.

sourceType
Permissions Определение
None (0) -
Read (1) Чтение
Delete (2) Удаление
Edit (4) Редактирование
All (Read + Edit + Delete) Все (Чтение, редактирование, удаление)

Пример

Справочник

Идентификатор Наименование
1 Первый
2 Второй
3 Третий
4 Четвертый

В справочнике настроить атрибутный доступ на атрибут справочника "Идентификатор".

 1  
 2 {
 3   ...
 4   "dictionaryStructure": {
 5     "attributes": [  
 6       {
 7         "id": 1,
 8         "name": "Идентификатор",
 9         "userAttributePermissions": {
10           "userAttributeId": "test_attribute",
11           "permissions": "Read"
12         }
13         ...
14       },
15       ...
16     ]
17   }
18   ...
19 }
Значение "test_attribute" Наименование элементов справочника доступных на чтение
null -
Empty -
1 Первый
1, 2 Первый, Второй