1.一种用户权限控制方法,其特征在于,包括:
获取访问用户的用户信息,所述用户信息中包含至少一个属性值;
将所述至少一个属性值与角色表达式进行匹配,获取所述访问用户的角色;
获取与所述角色对应的用户权限集合,所述用户权限集合中包含至少一个业务功能;
根据所述用户权限集合控制用户权限;
其中,所述将所述至少一个属性值与角色表达式进行匹配,获取所述访问用户的角色,包括:根据所述角色表达式生成角色决策二叉树;
采用后序遍历匹配算法,将所述至少一个属性值与所述角色决策二叉树进行匹配,获取访问用户的角色;
其中,所述角色表达式包括至少一个原子表达式,所述原子表达式包括实体属性、运算符、实体属性值;所述至少一个原子表达式之间通过连接符连接;
相应地,所述根据所述角色表达式生成角色决策二叉树,包括:在建立会话阶段,将所述至少一个原子表达式的实体属性和实体属性值转换成角色决策二叉树的叶子二叉点,将所述至少一个原子表达式之间的连接符转换成角色决策二叉树的枝干节点,并根据优先级调整所述角色决策二叉树的节点构成。
2.根据权利要求1所述的方法,其特征在于,所述根据所述用户权限集合控制用户权限,包括:若所述用户的访问的业务功能为属于所述用户权限集合中的功能,则允许所述用户访问所述业务功能;
若所述用户的访问的业务功能不属于所述用户权限集合中的功能,则禁止所述用户访问所述业务功能。
3.根据权利要求1所述的方法,其特征在于,所述获取与所述角色对应的用户权限集合,包括:根据角色与用户权限集合的对应关系表,获取所述角色对应的用户权限集合。
4.一种用户权限控制装置,其特征在于,包括:
获取模块,用于获取访问用户的用户信息,所述用户信息中包含至少一个属性值;
匹配模块,用于将所述至少一个属性值与角色表达式进行匹配,获取所述访问用户的角色;
所述获取模块,还用于获取与所述角色对应的用户权限集合,所述用户权限集合中包含至少一个业务功能;
控制模块,用于根据所述用户权限集合控制用户权限;
其中,所述匹配模块具体用于根据所述角色表达式生成角色决策二叉树;采用后序遍历匹配算法,将所述至少一个属性值与所述角色决策二叉树进行匹配,获取访问用户的角色;
其中,所述角色表达式包括至少一个原子表达式,所述原子表达式包括实体属性、运算符、实体属性值;所述至少一个原子表达式之间通过连接符连接;
相应地,所述根据所述角色表达式生成角色决策二叉树,包括:在建立会话阶段,将所述至少一个原子表达式的实体属性和实体属性值转换成角色决策二叉树的叶子二叉点,将所述至少一个原子表达式之间的连接符转换成角色决策二叉树的枝干节点,并根据优先级调整所述角色决策二叉树的节点构成。
5.根据权利要求4所述的装置,其特征在于,所述控制模块具体用于若所述用户的访问的业务功能为属于所述用户权限集合中的功能,则允许所述用户访问所述业务功能;若所述用户的访问的业务功能不属于所述用户权限集合中的功能,则禁止所述用户访问所述业务功能。
6.根据权利要求4所述的装置,其特征在于,所述获取模块具体用于根据角色与用户权限集合的对应关系表,获取所述角色对应的用户权限集合。