`
Virgo_S
  • 浏览: 1160311 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

搭建基于角色的权限控制系统

    博客分类:
  • JAVA
阅读更多
安全永远是WEB应用系统必须面对的头等大事, 也是最头疼的事, 其实安全系统就只包括两个问题: 认证和授权. 网管下载dl.bitscn.com

        以前做些网站系统, 安全检测逻辑都在放在须要安全控制的代码前面, 这样做有很多不好的地方, 重复多次的编码就不用说了, 代码移植性, 重用性都得不到体现, 安全检测逻辑要永远和业务逻辑放在一起. 网管下载dl.bitscn.com

        那么, 能不能够在进入方法前就调用一些安全检测? 其实Spring AOP就是这个思想, 那么又如何实现安全检测呢? Spring Acegi Security 框架就是做这个事情.

中国网管论坛bbs.bitsCN.com

         本文主要是讨论下在已有的SSH系统中, 如何使用Acegi作为安全框架实现基于角色的权限控制(Role Based Access Control RBAC) , 本文主要是以Java 5注解的形式来配置安全框架, 大大减化配置和操作. 网管u家u.bitsCN.com

        本文的主要参考资料: <Spring 2.0 核心技术与最佳实践> 第10章 (Spring Acegi 安全框架) 网管bitscn_com

                    <精通Spring 2.X -- 企业应用开发详解> 第17章 (使用Acegi 实施应用系统安全)

网管bitscn_com

                    acegi-security-1.0.6 官方文档

网管网www_bitscn_com


        说明: 本文介绍的是RBAC, 在官方文档的基础上有所扩展或改动, 以更适合WEB应用系统. 其实我觉得大多数的网站基于角色已经足够了, 一般都没必要基于权限.

网管u家u.bitsCN.com


         文章开始: 网管论坛bbs_bitsCN_com

    一. 下载所要的软件或JAR包:

网管网www_bitscn_com

        我的相关配置是: Java 5, Tomcat 5.5.26, Struts 2.0.11, Spring 2.5.1, Hibernate 3.2, Acegi 1.0.6

中国网管联盟bitsCN.com

    二. 建立相关的数据库:

网管论坛bbs_bitsCN_com

         数据表: 用户信息表User: id, enable, user_name, user_pass, email_box

网管论坛bbs_bitsCN_com


                     角色信息表RoleInfo: id, role_name, role_title, descp 中国网管论坛bbs.bitsCN.com

                     用户与角色关联表(用户与角色是多对多关系)UserRole: user_id, user_name, role_id, role_name

网管u家u.bitsCN.com

                    并在这三个表中插入相关的数据, 我是定义了两种角色(role_name): ROLE_USER, ROLE_ADMIN 网管联盟bitsCN_com

                    和三个用户, 一个用户角色为: ROLE_USER, ROLE_ADMIN

网管联盟bitsCN@com

                     另一个用户角色为: ROLE_USER 中国网管论坛bbs.bitsCN.com

                    第三个没有角色.

网管u家u.bitscn@com


    二. 修改配置文件: 网管联盟bitsCN_com

        其实对Acegi框架的应用难点就在配置文件, 所以要特别注意了: 中国网管论坛bbs.bitsCN.com

        在 src 建立Acegi的配置文件: acegi-security.xml 当然这个文件的名称是可以任意的.
【转自www.bitsCN.com】
分享到:
评论

相关推荐

    Acegi + Spring + Hibernate + Struts 2搭建基于角色的权限控制系统

    Acegi(现已被Spring Security替代)是一个强大的安全框架,可以与Spring、Hibernate和Struts 2等其他技术结合,实现基于角色的权限控制(Role-Based Access Control, RBAC)。这篇文档将探讨如何使用Acegi,以及SSH...

    基于角色访问控制

    基于角色的访问控制(RBAC)是一种流行的权限管理和安全模型,它将权限与角色关联,而非直接与个体用户关联。RBAC模型的主要优点包括易管理性、灵活性和安全性。 ### RBAC模型的组件 1. **用户(User)**:系统的...

    C# WinForm角色的权限菜单-源码.zip

    "C# WinForm角色的权限菜单-源码.zip"提供了一个实现基于角色的权限菜单功能的完整解决方案,适合那些需要在Windows桌面应用程序中进行权限控制的开发者。下面我们将详细探讨这个主题。 1. **角色权限设计**: ...

    SpringBoot整合Shiro实现基于角色的权限访问控制(RBAC)系统简单设计从零搭建.zip

    总结来说,这个项目涉及了SpringBoot的微服务架构、Apache Shiro的安全管理,以及基于角色的权限控制。通过合理的配置和编程,我们可以从零开始搭建一个完整的RBAC系统,这对于提升个人的IT技能和理解企业级应用的...

    基于springcloud+springboot+vue搭建的权限管理系统

    为了帮助企业方便快捷地...角色管理模块,通过权限关联与控制给用户赋予角色(管理员角色和普通用户角色);资源权限管理模块给不同的角色关联不同的资源权限;基本数据的管理即可以对商品以及订单信息进行CRUD操作。

    SpringBoot整合Shiro实现基于角色的权限访问控制(RBAC)系统简单设计从零搭建+源代码+文档说明

    SpringBoot整合Shiro实现基于角色的权限访问控制(RBAC)系统简单设计从零搭建 ================= #### 1 . 这是基于SpringBoot和Shiro实现的一个角色权限访问控制(RBAC)的系统。 基本描述 : 1 . 一个用户具有一...

    【Java】基于RBAC搭建的权限管理系统.zip

    基于角色的访问控制(RBAC)是一种广泛采用的权限管理策略,它通过角色定义用户权限,确保了系统的灵活性和可扩展性。本篇文章将深入探讨如何利用Java语言搭建基于RBAC的权限管理系统。 首先,我们要了解RBAC模型的...

    一个基于RBAC的权限控制系统并拥有基本通用后台管理功能_hy4.zip

    在一个信息管理系统中,权限控制系统的构建对于保障数据安全和维护系统的稳定运行具有至关重要的作用。基于角色的访问控制(Role-Based Access Control, RBAC)是一种广泛使用的权限管理模型,它通过定义角色与权限...

    ssm框架角色权限管理系统脚手架

    这个"ssm框架角色权限管理系统脚手架"是一个基础的后台管理系统,适用于快速搭建具备用户角色和权限控制功能的应用。下面将详细阐述这个系统的核心知识点: 1. **Spring框架**: - **依赖注入(DI)**:Spring的...

    ssh2权限控制系统

    Acegi_Spring_Hibernate_Struts2搭建基于角色的权限控制系统.doc

    【Java】基于RBAC搭建的权限管理系统_pgj.zip

    Java RBAC权限管理系统是一项基于角色的访问控制(Role-Based Access Control)的软件开发实践,其目的是通过角色的定义来简化对用户权限的管理。RBAC模型认为权限与角色相关联,用户通过被分配不同的角色获得角色所...

    基于FastApi+UmiJS实现了基于角色的权限控制(RBAC)的全栈开发脚手架_hy5.zip

    FastApi与UmiJS结合实现的基于角色的权限控制(RBAC)的全栈开发脚手架,融合了后端高效能的FastApi框架与前端的UmiJS框架,是一种高效的全栈开发解决方案。通过这一开发脚手架,开发者可以快速搭建出具有角色权限...

    用flask搭建系统的权限控制部分后端.zip

    在这个权限控制系统中,可能涉及的角色有管理员、普通用户等,每个角色可能有不同的权限级别。权限控制可能通过装饰器或者基于角色的访问控制(RBAC)来实现,允许开发者定义不同角色可以访问的URL和操作。数据库中...

    用户角色权限管理模块

    在IT系统设计中,用户角色权限管理模块是一个至关重要的组成部分,它主要负责维护系统的安全性和访问控制。这个模块确保了不同类型的用户只能访问他们被授权的功能和数据,从而保护了系统的完整性并提升了用户体验。...

    基于C#+ASP.NET实现的通用权限管理系统(FrameWork) 1.0.5 源码发布

    "通用权限管理"标签表明该系统设计的目标是提供一种广泛适用的解决方案,可以在各种不同类型的Web应用中进行权限控制。这样的系统通常具备以下特点: 1. **用户管理**:注册、登录、密码找回、用户资料管理等。 2. ...

    基于FastApi+UmiJS实现了基于角色的权限控制(RBAC)的全栈开发脚手架_hy4.zip

    9. **系统安全性考虑**:在实现基于角色的权限控制时,安全是一个不可忽视的因素。系统需要在设计时考虑防止常见的网络攻击,如SQL注入、跨站请求伪造(CSRF)等。FastApi提供了对安全机制的支持,例如OAuth2、JWT等...

    毕业设计:基于ASP.NET MVC搭建的通用权限后台管理系统.zip

    这个特定的毕业设计是基于ASP.NET MVC框架构建的通用权限后台管理系统,它涵盖了用户认证、角色管理和权限控制等核心功能,是学习和实践Web应用程序开发的典型实例。 【知识点详解】 1. ASP.NET:ASP.NET是由微软...

    基于.net三层架构技术 用户-角色-权限 的权限控制

    本项目是基于.NET框架实现的办公自动化系统(OA系统),它利用了三层架构技术进行设计,并且整合了jQuery库,实现了用户-角色-权限的精细权限控制。 **表现层(UI)**:这是用户与系统交互的界面,负责显示数据和...

Global site tag (gtag.js) - Google Analytics