功能升级迭代追加授权方案

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

功能升级迭代追加授权方案

各个领域功能升级迭代,废弃了一些功能又开发了新的功能(新权限)来替代,此时就需要进行新功能的补充授权。 目前平台权限组,有一些升级程序,可供各领域调用。

原则上,补丁升级进行无感知追加授权,这种情况建议尽可能的减少。


根据已有授权信息中的“表单-权限项”,追加新的“表单-权限项”,应用不变

适用版本:苍穹平台V6.0.1及以上。

升级内容包含:
三权分立策略管理员类型的功能权限、管理员组分组授权中第一个页签的功能权限、直接授权功能权限、直接禁权功能权限、通用角色授权功能权限、业务角色补充权限、业务角色禁用权限。

接口:
kd.bos.servicehelper.permission.PermissionServiceHelper
#appendPermItemAuthUpgrade(List<Object[]> oldEntPerItem2NewMapList, StringBuilder pProcessInfo)

入参示例:
List<Object[]> oldEntPerItem2NewMapList = Arrays.asList(new Object[]{"perm_busirole", PermItemConst.ITEM_MODIFY, "perm_busirole", PermItemConst.ITEM_ASSIGN, new Long[]{PermApiConst.THREE_STRATEGY_3_SECURITY_ENTRYID}}, new Object[]{});

参数含义:
Object[]{旧表单标识 , 旧表单的权限项, 需要新增的表单标识, 需要新增的权限项, new Long[]{三权分立时要授予权限的虚拟管理员}}。
目的1:如果原来有“perm_busirole”的“修改”权,那么追加“perm_busirole”的“分配”权。
目的2:将 “perm_busirole”的“分配”权, 赋予 "三权分立"下的安全管理员。


根据某应用追加表单的原生应用权限

适用版本:苍穹平台V6.0.1及以上。

升级内容包含: 

三权分立策略管理员类型的功能权限、管理员组分组授权中第一个页签的功能权限、直接授权功能权限、直接禁权功能权限、通用角色授权功能权限、业务角色补充权限、业务角色禁用权限。

接口:
kd.bos.servicehelper.permission.PermissionServiceHelper
#appendPermItemAuthByAppUpgrade(List<Object[]> needAppendAppEntPermItemMapList, StringBuilder pProcessInfo)

入参示例:
List<Object[]> needAppendAppEntPermItemMapList = Arrays.asList(
new Object[]{
	new String[]{"18XSXYEL8//U"}, "sys_login_config", PermItemConst.ITEM_VIEW, new Long[]{PermApiConst.THREE_STRATEGY_1_ADMIN_ENTRYID}
},
new Object[]{}
);

参数含义:
Object[]{new String[]{需要追加授权的应用id}, 需要追加授权的表单标识, 需要追加授权的权限项id, new Long[]{三权分立时要授予权限的虚拟管理员ID}}。
目的1:用户原来拥有 应用 "18XSXYEL8//U"(监控管理) 下任何授权,那么追加该应用下表单“sys_login_config” 的“查询”权。
目的2:将 “sys_login_config”的“查询”权, 赋予 "三权分立"下的系统管理员。


根据应用-表单映射关系追加授权

适用版本:苍穹平台V6.0.1及以上。

升级内容包含:  

三权分立策略管理员类型的功能权限、管理员组分组授权中第一个页签的功能权限、直接授权功能权限、直接禁权功能权限、通用角色授权功能权限、业务角色补充权限、业务角色禁用权限;

用户直接授权、通用角色的字段权限明细;

用户直接授权-数据规则;

用户直接授权-数据规则-基础资料范围;

通用角色-数据规则、基础资料范围;

特殊数据权限。

接口:
kd.bos.servicehelper.permission.PermissionServiceHelper
#appendPermByAppEntNumMapUpgrade(List<Object[]> appIdEntNumMapObjList, StringBuilder pProcessInfo)

入参示例:
List<Object[]> appIdEntNumMapObjList = Arrays.asList(
        new Object[]{"83bfebc8000037ac", "perm_role", "0XWTKVOQW+ML"},
        new Object[]{"83bfebc8000037ac", "perm_role", "160KDGX6L=GR"}
);

参数含义:
Object[]{已有授权的应用id, 表单number, 需追加授权的应用id}。
目的1:如果原来有 “基础服务(83bfebc8000037ac)” 的 “通用角色(perm_role)” 权限, 那么追加 “安全管理(0XWTKVOQW+ML)” 的 “通用角色(perm_role)” 权限。
目的2:如果原来有 “基础服务(83bfebc8000037ac)” 的 “通用角色(perm_role)” 权限, 那么追加 “基础资料(160KDGX6L=GR)” 的 “通用角色(perm_role)” 权限。


根据管理员身份追加授权

适用版本:苍穹平台V6.0.1及以上。

升级内容包含: 

三权分立策略管理员类型的功能权限、管理员组分组授权中第一个页签的功能权限。

接口:
kd.bos.permission.cache.util.AppendPermByAdminUpgradeUtil#upgrade(List<Object[]> needAppendPermList, StringBuilder pProcessInfo)

入参示例:
List<Object[]> needAppendPermList = Arrays.asList(
	new Object[]{"0XWTKVOQW+ML", "perm_log", "47150e89000000ac", new Long[]{PermApiConst.THREE_STRATEGY_2_AUDITOR_ENTRYID}},
	new Object[]{}
);

参数含义:
Object[]{需追加授权的应用id, 需追加授权的实体标识, 需追加授权的权限项id, new Long[]{三权分立时要授予权限的虚拟管理员}}。
目的1:
只要用户是管理员,就给他追加 “安全管理(0XWTKVOQW+ML)” 下 “权限日志(perm_log)” 的 “查询(47150e89000000ac)” 权。
目的2:将 “perm_log”的“查询”、“归档设置”权, 赋予 "三权分立"下的审计管理员。


确定前后应用-表单-权限项的追加授权

适用版本:苍穹平台V7.0.1及以上。

升级内容包含: 

三权分立策略管理员类型的功能权限、管理员组分组授权中第一个页签的功能权限、直接授权功能权限、直接禁权功能权限、通用角色授权功能权限、业务角色补充权限、业务角色禁用权限。

接口:
kd.bos.permission.cache.util.AppendPermBySureAppEntPermItemUtil#upgrade(List<Object[]> old2NewPermMapList, StringBuilder pProcessInfo)

入参示例:
List<Object[]> old2NewPermMapList = Arrays.asList(
	new Object[]{"0XWTKVOQW+ML", "bos_usergroup_user", PermItemConst.ITEM_VIEW, "0XWTKVOQW+ML", "bos_usergroup_user", "3WMBZC439VVL", new Long[]{PermApiConst.THREE_STRATEGY_3_SECURITY_ENTRYID}},
	new Object[]{}
);

参数含义:
Object[]{原权限的应用id , 原权限的表单标识 , 原权限的权限项id, 需追加授权的应用id, 需追加授权的表单标识, 需追加授权的权限项id, new Long[]{三权分立时要授予权限的虚拟管理员}}。
目的1:前6个参数,实现:如果原来有 应用“安全管理” - 表单“用户信息” - 权限项“查询” 的权限,那么追加 应用“安全管理” - 表单“用户信息” - 权限项“直接授权” 的权限。
目的2:后4个参数,实现:将 应用“安全管理” - 表单“用户信息” - 权限项“直接授权” 的权限, 赋予 "三权分立"下的 安全管理员。


功能升级迭代追加授权方案

各个领域功能升级迭代,废弃了一些功能又开发了新的功能(新权限)来替代,此时就需要进行新功能的补充授权。目前平台权限组,有一些升级程...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息