Для присвоения пользователю ролей и прав доступа на мультисферы применяется метод grant_permissions:
grant_permissions(user_name: str, clone_user: Union[str, bool] = False) -> dict:
В методе используются следующие аргументы:
| Аргумент | Описание |
|---|---|
| user_name: (str) | Имя пользователя, которому требуется предоставить права и присвоить роли. |
| clone_user: (Union[str, bool]) | Имя пользователя, у которого будут скопированы роли и права доступа на мультисферы. Если не указывать этот параметр, то пользователю будут выставлены ВСЕ роли и права. В текущей версии системы при копировании прав доступа у пользователя, обладающего частичными правами на мультисферу, пользователю, указываемому в значении аргумента user_name, добавляются полные права доступа на эту мультисферу. Отсутствие прав на конкретные размерности, факты, элементы размерностей, как и наличие скрытых размерностей и фактов в настройках прав, не копируется. |
Пример использования метода:
session.grant_permissions(user_name='TestUser3', clone_user='TestUser2') или session.grant_permissions(user_name='TestUser3')
В результате применения метода возвращается ответ, как при использовании команд user: info и user_cube: change_user_permissions.
Пример ответа:
{'state': 1,
'queries': [{'uuid': '510ac6ac-dcc67773-1d813882-7db243cb',
'command': {'plm_type_code': 206, 'state': 12}},
{'uuid': '510ac6ac-dcc67773-1d813882-7db243cb',
'command': {'plm_type_code': 208, 'state': 23}}]}