搭建一个web系统,最先考虑的可能就是一个登录系统。登录认证授权这是一个涉及很多方面考虑的理论,关于这个问题也有很多成熟的解决方案,比如spring-security、apache shiro等。但是,在这个框架泛滥的年代,使用这些比较繁琐的框架会带来很多学习成本。由此可见登录授权问题往往就成了新手的拦路虎,或者直接没注意造成系统的安全隐患。
登录系统按照spring-security的划分,可以分为认证和授权。认证说的简单点就是把用户提交的用户名密码校验,然后把合法的用户放到session中。授权那就是区分不同的用户和角色,从而控制对特定资源的保护。
这篇文章简单说一下在springMVC环境下的一个授权实现(不是认证吆),下一篇会说一下struts2的简单授权实现。这里也给大家分享我自己录制的一个spring-security的视频教程,能力有限教程只教大家基本理论和如何看文档。
视频下载地址:http://pan.baidu.com/s/1qWGwUOO
要限制用户对某些资源的访问,最直接的肯定就是在controller中某个方法里直接判断当前用户的用户名和角色等信息。这样简单清晰实用,简直就像一个土钢炮。但是整个项目都这样写会显得特别臃肿,不够优雅。
为了打到简单易用,我们可以使用自定义Annotation,只想在一个方法上添加一个Annotation把要限制的用户名角色等信息作为参数传给Annotation,然后配合springMVC的interceptor来完成一个简单好用的授权系统。我这里仅演示一个限制角色的简单授权。其他的可以举一反三。
首先定义一个Annotation