Spring/Hibernate 应用程序中的角色/权限
Posted
技术标签:
【中文标题】Spring/Hibernate 应用程序中的角色/权限【英文标题】:Roles/Priviledges in a Spring/Hibernate application 【发布时间】:2010-12-12 23:20:19 【问题描述】:在银行或类似应用程序中,通常定义了多个角色并需要相关的权限(例如,普通用户只能进行交易但不能发布,而主管可以验证和发布它们,有点像制造商/检查者)。我们还需要在系统中添加新的角色和权限(不确定后者)。
如何在 Spring/Hibernate 应用程序中实现这种基于角色的访问?特别是在扩展以添加新角色/特权方面。 Acegi(我从未使用过)可以提供帮助吗?任何其他可以帮助我实现上述目标的想法将不胜感激。
谢谢,
【问题讨论】:
【参考方案1】:正如 duffymo 所提到的,Acegi 已重命名为“Spring Security”,如果您已经在使用 Spring,我建议您这样做。
Acegi 的在线文档比 Spring Security 多,因此如果有疑问,您可以在 Acegi 文档/教程以及最新的 Spring 资料中找到有用的信息。
如果您可以设计您的用户表以符合 Spring Security 的概念(用户名、密码、角色,每个都有特定的类型和名称),那么您可以直接使用 Spring Security 的 DAO 类;如果没有,您构建一个小型适配器类来将 Spring Security 连接到您的数据库以供用户查询。
您可以为每个 servlet/URL 甚至在方法级别指定所需的角色。我花了一两天的时间来理解所涉及的概念,但在那之后配置它相当容易,我很高兴他们已经解决了与 Web 安全相关的大多数问题。
【讨论】:
【参考方案2】:是的,Spring Security(以前称为 ACEGI)可以做到。
【讨论】:
以上是关于Spring/Hibernate 应用程序中的角色/权限的主要内容,如果未能解决你的问题,请参考以下文章
基于jsp+mysql+Spring+hibernate+的SSH在线学习交流论坛平台
GWT + Spring + Hibernate中的示例应用程序[关闭]
基于jsp+mysql+Spring+hibernate+的SSH在线学习交流论坛平台
在spring mvc中选择spring hibernate中的查询