实际需求
1、不同用户拥有不同权限(功能)
2、不同部门拥有相同权限的用户可以查看或修改相应部门下的数据
3、高一级的用户(经理,总监)可以看到管辖下的其他用户的数据。
4、同一个用户可以支持多个角色(可以是销售,也可以是采购经理,这2个角色的功能权限完全不同,需要区分)
鉴以上需求,可以从2个维度来控制用户的功能权限,和数据权限。
功能权限很简单是一个 RABC 的权限模型:
用户 <---> 角色 <----> 功能(资源)
中间增加 角色 中间层,避免用户直接应对功能的复杂性,和减少相同职务重复赋权的错误概率。
小程序查看更多java相关面试题