我构建了一个具有相当典型的用户/组/权限系统的CMS系统,其中用户可以是组的成员,权限可以直接应用于用户,也可以应用于用户可以属于的组。权限也可以是“通配符”(例如适用于所有对象)或适用于由模块名称和行ID指定的特定对象。权限可以是授予访问权限的“允许”,也可以是“拒绝”,它专门阻止访问并覆盖他们在其他地方授予的任何“允许”权限。拒绝存储在userpermission/grouppermission表中,方法是创建一个“允许”列设置为0的行。以下查询当前用于(并且有效)列出所有已被授予特定“通配符”权限(permissionid123)的用户。SELECT`user`.*FROM(SE