克隆一个权限集并返回其 id
使用独立的事务,不与调用脚本共用一个事务,执行成功后即持久化到数据库中
创建一个权限集并返回其 id
使用独立的事务,不与调用脚本共用一个事务,执行成功后即持久化到数据库中
name of profile, should be unique
description
delete profile by id, if profile does not exist, throw error
delete profile by name, if profile does not exist, throw error
name of profile
根据权限配置ID和应用程序ID获取菜单设置
权限配置ID
应用程序ID
import * as permission from 'permission';
let mng = permission.newProfileManager();
let appMenuList = mgr.getAppMenuProfilesById("profileID", "appID")
console.log(appMenuList)
应用菜单配置的列表
根据ID获取权限配置的应用程序设置
应用程序配置的列表
get profile by id
profile id
get profile by name, if not found return null
of profile
get all profiles
get service permissions by profile id
profile id
继承克隆权限。新的权限仅克隆基本权限与业务权限,克隆后可独立修改。 其他权限项均与父权限保持一致,不允许修改。
子权限不允许被继承克隆。
使用独立的事务,不与调用脚本共用一个事务,执行成功后即持久化到数据库中
import * as ps from 'permission';
let src = "src_profile_id"
let newName = "cloned_name"
let mng = ps.newProfileManager();
let newId = mng.inheritClone(src, newName);
部分克隆权限集并返回其 id
使用独立的事务,不与调用脚本共用一个事务,执行成功后即持久化到数据库中
Rest
...parts: ClonePartType[]
import * as permission from 'permission';
let src = "src_profile_id"
let newName = "cloned_name"
let mng = permission.newProfileManager();
mng.partialClone(src, newName, permission.ClonePartType.App, permission.ClonePartType.Menu, permission.ClonePartType.ServicePermission, permission.ClonePartType.SysParameter);
部分继承克隆权限。新的权限仅克隆基本权限与业务权限,克隆后可独立修改。可选部分权限仅克隆而不继承,可独立修改。
其他权限项均与父权限保持继承关系,不允许修改。
使用独立的事务,不与调用脚本共用一个事务,执行成功后即持久化到数据库中
Rest
...parts: ClonePartType[]仅克隆而不继承的权限。目前仅支持输入ps.ClonePartType.App和ps.ClonePartType.Menu。
import * as ps from 'permission';
let src = "src_profile_id"
let newName = "profile_name"
let mng = ps.newProfileManager();
let newId = mng.partialInheritClone(src, newName, ps.ClonePartType.App, ps.ClonePartType.Menu);
新权限配置的ID
set connector permission allows to update accessibility of one connector
profile id
type of connector, e.g. obs
the name of the connector
重新设置继承克隆的子权限的部分继承设置
使用独立的事务,不与调用脚本共用一个事务,执行成功后即持久化到数据库中
Rest
...parts: ClonePartType[]仅克隆而不继承的权限。目前仅支持输入ps.ClonePartType.App和ps.ClonePartType.Menu。
set service permission by profile id
profile id
permission name
set multiple service permission
profile id
permission assignment list
更新应用的菜单配置
import * as permission from 'permission';
let mng = permission.newProfileManager();
mng.updateAppMenuProfilesById( profileID, appID, [{menu: 'menuID1', default: true, visible: true},{menu: 'menuID2', default: false, visible: false}])
根据ProfileID更新指定权限配置的应用程序设置
Profile ID
需要更新的AppProfile配置信息,未指定的AppProfile不会修改。
import * as permission from 'permission';
let mng = permission.newProfileManager();
mng.updateAppProfilesById(id, [{ applicationID: "app_ID", visible: true, default: true }])
update profile value by id
import * as ps from 'permission';
let id = "xxxx"
let mng = permission.newProfileManager();
let values = permission.valueMap({ ViewAllData: false, ManageUsers: true, ManageProcesses: true });
mng.updateProfileById(id, values);
update profile value by name
import * as ps from 'permission';
let name = "name"
let mng = permission.newProfileManager();
let values = permission.valueMap({ ViewAllData: false, ManageUsers: true, ManageProcesses: true });
mng.updateProfileByName(name, values);
权限相关管理接口
在开启安全配置情况下,需要对应的权限才可以执行, 如对权限进行增删改需要 '管理权限', 查看需要权限需要 '查看权限管理'