RBAC类的方法

时间:2023-03-08 17:48:01

rbac类的 方法

authenticate($map,$model='')方法 传入查询用户的条件和用户表的MODEL 返回数组包含用户的信息

saveAccessList($authId=null)方法 传入用户的ID 此方法不返回值,只是设置 $_SESSION['_ACCESS_LIST']的值,其中包含了所有该用户对应的用户组的有权限操作的所有节点 $_SESSION['_ACCESS_LIST']['项目名']['模块名']['操作名'],以后判断权限就是判断当前项目,模块和操作是否在 $_SESSION['_ACCESS_LIST']中能找到。s

AccessDecision($appName=APP_NAME) 方法 就是检测当前项目模块操作 是否在$_SESSION['_ACCESS_LIST']数组中,也就是说 在 $_SESSION['_ACCESS_LIST'] 数组中$_SESSION['_ACCESS_LIST']['当前操作']['当前模块']['当前操作']是否存在。如果存在表示有权限 否则返回flase。

// getAccessList($authId) 方法 通过查询数据库 返回权限列表的值了。saveAccessList会调用它 并把他的数组赋值到$_SESSION['_ACCESS_LIST']中

//checkAccess() 方法 检测当前模块和操作是否需要验证 返回bool类型(AccessDecision方法中已经调用