IT虾米网

Fine报表权限流程分析记录详解

developer 2019年07月18日 程序员 141 0

Fine报表权限流程分析记录

URL访问三种类型的报表:
第一个:BI报表

例如: 
 
http://192.25.103.250:37799/WebReport/ReportServer?op=fr_bi&cmd=bi_init&id=50&openFromShare=true&systemManager=true&createBy=-999 
http://192.25.103.250:37799/WebReport/ReportServer?op=fr_bi&cmd=bi_init&id=55&show=_bi_show_&createBy=-999

第二个:finereport制作的cpt模板,

http://192.25.103.250:37799/WebReport/ReportServer?op=fs_main&cmd=entry_report&id=25 
或者 
http://192.25.103.250:37799/WebReport/ReportServer?reportlet=王健全_分支机构概况.cpt 
 
在本地测试打开cpt模板是直接通过模板名的,取fr_reportletentry的reportletPath的值;

第三种:url连接的报表(fr_urlentry)取表里url的路径值即可

http://192.25.103.250:37799/WebReport/ReportServer?op=fr_bi&cmd=bi_init&id=120&createBy=-999

 

以下是针对直接用url访问:
    针对BI的模板(数据库直连)报表的BI报表权限:
-- 1,需配置直连数据库的角色权限xml文件(配置报表内容权限,不支持配置所有角色,支持配置所有部门职位);
-- 2,需要配置角色的BI查看权限xml文件(配置报表打开权限);
-- 3,跟finedb.FR_T_CUREP表的数据没关系;
-- 4,人员必须要有部门职位(因为1中不支持配置所有角色,所以每次新增人员都要配置一次;配置所有部门职位,新增人员就不用配置默认有权限);

    针对finereport制作的cpt模板报表权限:

-- 1,跟 角色的BI查看权限没关系;
-- 2,跟finedb.FR_T_CURtP 表的数据有关系,也是必须登录到授权页面,直接删除后台数据,不登录授权页面操作没效果;
-- 3,后台数据库变更,前端不会显示,权限不收影响,即使后台将模块权限记录删除,依旧有权限;必须的登录授权模块操作;

    URL连接报表权限:
--权限模式跟url里面内容有关:也分为BI和report
--BI按BI的权限配置方案;report按照finereport的权限配置方案

 

以下针对FineBI平台登录访问:
    针对BI的模板(数据库直连)和URL连接报表的BI报表权限:
-- 1,需配置直连数据库的角色权限xml文件(配置报表内容权限,不支持配置所有角色,支持配置所有部门职位);
-- 2,需要配置角色的BI查看权限xml文件(配置报表打开权限);
-- 3,跟finedb.FR_T_CUREP表的数据有关系,仅仅是显示目录的作用,也是必须登录到授权页面;
-- 4,人员必须要有部门职位(因为1中不支持配置所有角色,所以每次新增人员都要配置一次;配置所有部门职位,新增人员就不用配置默认有权限);

    针对finereport制作的cpt模板报表权限:
-- 1,跟 角色的BI查看权限没关系;
-- 2,跟finedb.FR_T_CURtP 表的数据有关系,也是必须登录到授权页面;
-- 3,后台数据库变更,前端不会显示,权限不收影响,即使后台将模块权限记录删除,依旧有权限;必须的登录授权模块操作;

    URL连接报表权限:
--权限模式跟url里面内容有关:也分为BI和report
--BI按BI的权限配置方案;report按照finereport的权限配置方案

 

权限表:

select * from finedb.FR_T_CUREP; -- 自定义角色预览fs目录的权限表,对应fr中的目录权限 
-- type报表类型2 对应的是fr_t_reportletentry 
-- type报表类型7 对应的是fr_bireportentry 
-- type报表类型0 对应的是finedb.fr_folderentry 
-- type报表类型3 对应的是finedb.fr_urlentry 
 
select * from finedb.fr_t_curmp ; -- 自定义角色预览平台管理模块的权限表 
 
select * from finedb.fr_t_curesp; -- 自定义角色excel批量导入权限表 
 
select * from finedb.fr_t_curhpp; -- 自定义角色首页权限表 
 
select * from finedb.fr_t_curtp ; -- 自定义角色模板权限表 
 
select * from finedb.fr_t_curdacrp ; -- 自定义角色可管理部门/自定义角色的权限表 
 
select * from finedb.fr_t_curdcp ; -- 定义角色数据连接权限表

 

表对应关系:

FR_T_PlatformManageModule    FR_T_PFMM 
FR_ReportProcessEntry    FR_RPPE 
FR_T_CompanyRoleEntryPrivilege    FR_T_COREP 
FR_T_CustomRoleEntryPrivilege    FR_T_CUREP 
FR_T_CompanyRoleDepAndCRolePrivilege    FR_T_CORDACRP 
FR_T_CustomRoleDepAndCRolePrivilege    FR_T_CURDACRP 
FR_T_CompanyRoleModulePrivilege    FR_T_CORMP 
FR_T_CustomRoleModulePrivilege    FR_T_CURMP 
FR_T_CompanyRoleESPrivilege    FR_T_CORESP 
FR_T_CustomRoleESPrivilege    FR_T_CURESP 
FR_T_CompanyRoleTemplatePrivilege    FR_T_CORTP 
FR_T_CustomRoleTemplatePrivilege    FR_T_CURTP 
FR_T_CompanyRoleHomePagePrivilege    FR_T_CORHPP 
FR_T_CustomRoleHomePagePrivilege    FR_T_CURHPP 
FR_Schedule_Task_Link_Output    FSTLO

 

-- 删除离职人员,需要删除的关联表,只适用人员角色一对一的情况

delete from finedb.fr_t_curep where roleid=9; 
delete from finedb.fr_t_curtp where roleid=9; 
delete from finedb.fr_t_curmp where roleid=9; 
delete from finedb.fr_t_curesp where roleid=9; 
delete from finedb.fr_t_curhpp where roleid=9; 
delete from finedb.fr_t_curdcp where roleid=9; 
delete from finedb.fr_t_curdacrp where roleid=9; 
delete from finedb.fr_t_customrole_user where userid=81; 
delete from finedb.fr_t_department_post_user where userid=81; 
delete from finedb.fr_t_user where id =81; 
delete from finedb.fr_t_customrole where id =9;

 

插件详情:

--fr-plugin-cache-reset-1.0.zip 每次新增数据,删除数据都执行下清理缓存命令: 
  op=fs_main&cmd=reset_cache这个命令在安装这个插件后才有效 
 
--fr-plugin-batch-userset-1.2.zip安装后访问这个就可以了——op=bi_batch_set&cmd=start 
在URL中添加这个激活后就会每五分钟进行一次授权了

 

发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

MySQL 字符串拼接详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。