目录

权限控制配置

在集成调用的产品应用方式下,还涉及到权限控制的需求,例如控制当前用户是否有权访问某一功能,或者有权查看某张报表。

在集成调用方式下,实现权限控制的方式有很多种。例如可以使用本产品本身提供的权限控制功能模块,或者由客户应用系统的权限模块进行权限控制,此外,还可以通过在用户的请求发出前进行权限的二次判断来进行控制。

下面介绍本产品在集成调用时所提供的权限控制接口,此部分的实现和配置在产品系统或集成的产品模块中进行。

集成调用入口提供了权限控制的接口,可以在调用请求发出前进行权限控制,如无权限,可实现对请求的拦截。权限控制配置可用于判断当前请求的用户是否有权限进行调用,以及控制可调用的资源等。

使用方法

具体配置和实现方式如下:

1、实现com.runqianapp.security.privilege.IPrivilege接口类

2、拷贝接口实现类至产品类路径下

3、在产品客户化模式配置文件(gezCustom/config/gezCustomPattern.xml )中设置模块化调用的统一权限控制接口。

<interfaces>
     <interface id="privInterface" name="privInterface" class="com.runqianapp.security.privilege. MyPrivilege " />
</interfaces>

IPrivilege接口说明

接口名: com.runqianapp.security.privilege. IPrivilege

重要方法:

public boolean getPrivValue(HttpServletRequest request)

方法参数:request  request对象

功能说明:返回是否有权限访问

返回值:布尔值

示例:

public class MyPrivilege implements IPrivilege {
    public boolean getPrivValue(HttpServletRequest request) {
         if(request.getSession().getAttribute("sys_UserID")!=null){
             String username= request.getSession().getAttribute("sys_UserID").toString();
             return !"1".equals(username);                  
         }else return true;
    }
}