Please enable JavaScript.
Coggle requires JavaScript to display documents.
CAM-15435: Сконфигурировать allowedObjects для атрибута isConfidential -…
CAM-15435: Сконфигурировать allowedObjects для атрибута isConfidential
Условие задачи
В статическую часть добавить атрибут с запретом редактирования
В динамическую часть добавить:
Проверку OAPI-роли, позволяющей получать данные по конфиденциальным лицевым счетам, на действие чтения;
Проверку OAPI-роли, позволяющей изменять данные по конфиденциальным лицевым счетам, на действия создания/редактирования;
Вывод
В статической части речь идёт о самом атрибуте
В динамической части речь идёт о всё ЛС, включая атрибут isConfidential
Теория по allowed objects
Open API 2.0
Права доступа и ограничения указываются непосредственно для входных/выходных параметров функций
описание ограничений
Для входных параметров
обязательность значения атрибута (обязательный или опциональный)
разрешение или запрет использования значения входного параметра - для заданного набора ролей
Для выходных параметров
разрешение или запрет на вывод атрибута сущности - для заданного набора ролей
Права доступа и ограничения указываются для атрибутов общей сущности
Описание ограничений
Для каждого атрибута сущности - обязательность значения атрибута (только для создания / обновления)
Для каждого атрибута сущности - разрешение или запрет использования значения атрибута при выполнении создания, обновления, чтения
В случае, если для функции заданы оба варианта, используется второй (права и ограничения заданные непосредственно для параметров функции игнорируются)
Речь снова идёт об отдельных атрибутах сущности
Реализация CAM
Для конфигурируемого разграничения доступа использован подход, когда базовая конфигурация описывается в SSO, но дополнительно может быть расширена/переопределена в конфигурационном параметре zookeeper (это нужно для большей вариативности)
статическая часть
По бизнес-требованиям не достаточно той гибкости, которую дает настройка разграничений доступа SSO. Требуется также ограничивать доступ к атрибуту сущности в зависимости от какого-либо другого атрибута этой же сущности
динамическая часть
CLM-453845
Выполняется создание двух новых OAPI-роли
OAPI-роли, позволяющей получать данные по конфиденциальным лицевым счетам (OAPI:v2:Account:Confidential:Get)
OAPI-роли, позволяющей изменять данные по конфиденциальным лицевым счетам (OAPI:v2:Account:Confidential:Update)
Новые роли не должны входить в состав каких-либо базовых ролей
Конфигурация атрибутов в рамках механизма allowedObjects
при создании лицевого счета:
для всех юридических типов (ФЛ, ЮЛ, ИП):
признак конфиденциальности запрещен для заполнения вне зависимости от наличия специальной роли, значение по умолчанию - "Не конфиденциальный"
при редактировании лицевого счета:
для ФЛ
признак конфиденциальности запрещен для заполнения вне зависимости от наличия специальной роли
для ЮЛ и ИП
признак конфиденциальности можно изменить только пользователю со специальной ролью, атрибут запрещен для зануления
при получении данных лицевого счета
для ФЛ:
признак конфиденциальности запрещен для заполнения вне зависимости от наличия специальной роли
для ЮЛ и ИП:
признак конфиденциальности можно видеть только пользователю со специальной ролью