我是构建安全问题的新手。现在我正在开发一个基于RBAC模型的项目,我选择Spring Security 3来实现它。
众所周知,RBAC中每个角色都有自己的权限,判断一个用户是否有权限执行操作的方法是先获取他的角色,然后获取该角色的所有权限。我认为权限决定操作权限服务层(J2EE)。
Spring Security 提供注解或 Aspect 来保护服务层。但它们都是基于角色级别的,例如“hasRole”。这似乎切断了角色和权限之间的关系,因此让管理员分发权限并不灵活。
解决这个问题的常用方法是什么?Spring Security 是否启用受权限保护的实现?