AclManager.java
上传用户:kimgenplus
上传日期:2016-06-05
资源大小:20877k
文件大小:2k
源码类别:

OA系统

开发平台:

Java

  1. package com.bjsxt.oa.managers;
  2. import java.util.List;
  3. public interface AclManager {
  4. /**
  5.  * 授权
  6.  * @param principalType 主体类型
  7.  * @param principalSn 主体标识
  8.  * @param resourceSn 资源标识
  9.  * @param permission 权限:C/R/U/D
  10.  * @param yes 是否允许,true表示允许;false表示不允许
  11.  */
  12. public void addOrUpdatePermission(
  13. String principalType,
  14. int principalSn,
  15. int resourceSn,
  16. int permission,
  17. boolean yes
  18. );
  19. /**
  20.  * 删除授权
  21.  * @param principalType
  22.  * @param principalSn
  23.  * @param resourceSn
  24.  */
  25. public void delPermission(
  26. String principalType,
  27. int principalSn,
  28. int resourceSn
  29. );
  30. /**
  31.  * 添加或更新用户的继承特性
  32.  * @param userId 用户标识
  33.  * @param resourceSn 资源标识
  34.  * @param yes true表示继承,false表示不继承
  35.  */
  36. public void addOrUpdateUserExtends(int userId,int resourceSn,boolean yes);
  37. /**
  38.  * 判断用户对某模块的某操作的授权(允许或不允许)
  39.  * @param userId 用户标识
  40.  * @param reourceSn 资源标识(id)
  41.  * @param permission 权限(C/R/U/D)
  42.  * @return 允许(true)或不允许(false)
  43.  */
  44. public boolean hasPermission(int userId,int reourceId,int permission);
  45. /**
  46.  * 判断用户对某模块的某操作的授权(允许或不允许)
  47.  * @param userId 用户ID
  48.  * @param reourceSn 资源唯一标识(sn)
  49.  * @param permission 权限(C/R/U/D)
  50.  * @return 允许(true)或不允许(false)
  51.  */
  52. public boolean hasPermissionByResourceSn(int userId,String reourceSn,int permission);
  53. /**
  54.  * 搜索某个用户拥有读取权限的模块列表(用于登录,形成导航菜单的时候)
  55.  * @param userId 用户标识
  56.  * @return 模块列表(即列表的元素是Module对象)
  57.  */
  58. public List searchModules(int userId);
  59. /**
  60.  * 根据主体类型和主体标识查找ACL记录
  61.  * @param principalType
  62.  * @param principalSn
  63.  * @return
  64.  */
  65. public List searchAclRecord(String principalType,int principalSn);
  66. }