机构管理

阅读(2381) 标签: 机构, 角色,

使用机构为用户分组,可以给机构配置对服务器上某个数据源和管理路径的读写删权限。建立机构的好处是可以为组里的所有用户统一定义访问报表的权限。

报表中心默认会提供一套完整的用户体系,可以定义各种机构和用户,本章主要介绍用户体系的配置和代码使用,方便用户根据自己的需求定制不同的用户体系。

配置介绍

机构在reportCenter.xml中的配置介绍如下:

<?xml version="1.0" encoding="UTF-8"?>

<reportCenter>

<!-- 超级管理员admin密码初始为a000000 -->

<managerPass>82273A6BA2126D3AF24CE2D0CB0AF515</managerPass>

<roles>

<!--下一个新增机构的roleId编号 -->

<newId>2</newId>

<!--机构角色,超级管理员和管理员不可修改。role标签的属性说明:

name:机构名称;

roleId:机构编号,用于区别角色。已占用的编号:0是超级管理员,1是管理员,-1为访客;

nodeList: 角色可见的节点id—用于生成该角色登录时看到的节点树过滤;

dsList: 设计器中可用数据源远程服务登录能看到的数据源

dirmodeRptList:报表设计器资源路径权限远程服务登录能看到的资源树和管理权限;

dirmodeDfxList:集算器设计器资源路径权限远程服务登录能看到的资源树和管理权限;

-->

<role name="超级管理员" roleId="0" allAuth="true" nodeList="" /> 

<role name="管理员" roleId="1" allAuth="true" nodeList="" />

<role name="访客" roleId="-1" dirmodeRptList="demo,1" nodeList="1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76" dsList="demo" dirmodeDfxList="demo,1" />

</roles>

… …

</reportCenter>

JAVA 接口说明

 

java代码中机构集合的获取需要调用com.raqsoft.cetner.Config.getRoles();返回一个Role类实体的数组。

机构主要用于权限验证,自定义时关联权限验证应该检查如下修改:

com.raqsoft.center.console.LoginServlet.java登录身份记录

com.raqsoft.center.console.LoginFilter.java登录验证

com.raqsoft.center.console.node.DeployTreeNode.java展现节点树

com.raqsoft.center.console.file.UploadFilesServlet.java上传

com.raqsoft.center.console.file.Download.java下载

com.raqsoft.center.console.file.FileServlet.java删除

com.raqsoft.center.console.PasswordServlet.java密码修改

com.raqsoft.center.console.ReportCenterServlet.java

-ACTION_TO_ROLE_PAGE跳转角色列表

com.raqsoft.center.console.mobile.MobileLoginFilter.java手机端登录验证

com.raqsoft.center.console.mobile.ShowMobileTree手机端展现节点树

此外,部分jsp使用登录时记录于sessionloginType控制页面。如[安装根目录]\report\web\webapps\demo\raqsoft\center\header.jsp中的按钮。

 

为了方便管理角色,便于增删改查,定义了com.raqsoft.center.RoleManager.java类,客户在自定义时可以调用或参照里面的方法简化增删改查编写过程。