最近学习security 发现这是个基于角色的访问控制系统。
看了些前辈的代码分析的情况如下:
1、系统登陆时loadResourceDefine 导入角色和资源的关系。
大概的思路是查表组合成“url”&'role'一对多的关系。
2、访问控制时根据截获的url来查找是否有对应的角色来通过验证。
问题:
1、在组合url&role Bean时如何更有效的查询,在ResourcesBean里面放个Set集合的role?这个是security提供的默认最佳方案。但是在组合这个bean的时候占用大量的查询。
2、如果组合成url 1:1 role呢,这样根据url查询role会查出来个集合,我想效果会是一样的,思路也会更清晰。
3、如果某url系统内没有查不到权限会返回anymore角色,如果某页面在系统内配置了,但是还是查不到角色就会返回null系统会默认放行。我的解决方案是如果查不到都返回NOROLE这样系统就会全部弹出到指定页面。
看了些前辈的代码分析的情况如下:
1、系统登陆时loadResourceDefine 导入角色和资源的关系。
大概的思路是查表组合成“url”&'role'一对多的关系。
2、访问控制时根据截获的url来查找是否有对应的角色来通过验证。
问题:
1、在组合url&role Bean时如何更有效的查询,在ResourcesBean里面放个Set集合的role?这个是security提供的默认最佳方案。但是在组合这个bean的时候占用大量的查询。
2、如果组合成url 1:1 role呢,这样根据url查询role会查出来个集合,我想效果会是一样的,思路也会更清晰。
3、如果某url系统内没有查不到权限会返回anymore角色,如果某页面在系统内配置了,但是还是查不到角色就会返回null系统会默认放行。我的解决方案是如果查不到都返回NOROLE这样系统就会全部弹出到指定页面。