WEB开发网
开发学院软件开发Java 使用SpringSide 3.1.4.3开发Web项目的全过程(下)... 阅读

使用SpringSide 3.1.4.3开发Web项目的全过程(下)

 2009-09-24 00:00:00 来源:WEB开发网   
核心提示:第八步、使用Spring Security保护Web资源,在SpringSide 3项目中,使用SpringSide 3.1.4.3开发Web项目的全过程(下),已经整合进了SpringSecurity,实现了符合RBAC规范的权限管理系统,而authorities是肯定要增加的,我想让只有“用户&rdqu

第八步、使用Spring Security保护Web资源。在SpringSide 3项目中,已经整合进了SpringSecurity,实现了符合RBAC规范的权限管理系统,并把数据保存到了数据库中。我以前的博文SpringSide 3 中的安全框架中对SpringSecurity有一个初步的探讨,我认为我写的东西对入门来说是很有帮助的,入门以后再深入就简单了,在评论中我又补充了几点,其中就提到如果要把资源权限配置内容放到数据库中,就要从objectDefinitionSource着手。事实上,在最新的SpringSide 3版本中,就是通过定义一个databaseDefinitionSource来实现从数据库中读取资源和权限之间的关系,而 databaseDefinitionSource引用resourceDetailService,而该Service调用 personal.youxia.service.security.ResourceDetailServiceImpl。就是这样一层套一层的关系,但是最终只需要用户实现personal.youxia.service.security.ResourceDetailServiceImpl即可。在SpringSide 3项目中,实现该Service的工作都可以省略,因为江南白衣已经做好了。而我们要做的,就是在他提供的基础上进行扩展。

在项目中,已经定义好了users、roles、authorities和resource,如果需要扩展其中任意一项,只需要向对应的数据表添加记录即可。预定义的role有“管理员”和“用户”两种,我认为在该示例中已经没有增加角色的必要了,而authorities是肯定要增加的,我想让只有“用户”能够添加文章,只有“管理员”能够删除文章,所以在authorities表中增加如下两行:

insert into AUTHORITIES (NAME,DISPLAY_NAME) values('A_ADD_ARTICLE','添加文章');
insert into AUTHORITIES (NAME,DISPLAY_NAME) values('A_DELETE_ARTICLE','删除文章');

1 2 3 4 5  下一页

Tags:使用 SpringSide 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接