具有数据库和多个角色的Spring安全性?

Mik*_*ike 2 spring-security

我正在尝试使用spring 3.0创建一个应用程序.现在我决定尝试一下Spring-security和hibernate.我已经看到有可能用数据库支持它,我看到了定义你自己的查询的引用?

现在我遇到的问题是我发现的教程不太清楚,他们认为用户只能有一个角色.我想给一些用户多个角色.

所以我在考虑一个数据库方案:

用户:

  • 用户身份
  • 用户名
  • 密码
  • 登记日期

USER_ROLE:

  • 用户身份
  • ROLE_ID

角色:

  • ROLE_ID
  • 角色名

现在我想知道是否有人有一些指向一些有用的教程/建议/评论.

Kde*_*per 8

您需要实现自己的UserDetails(为每个用户支持多个角色).然后,您自己的UserDetailsS​​ervice实现会返回此自定义UserDetails实现,该实现将注入daoAuthenticationProvider.

另请参阅我的回答@ Spring Security 3数据库身份验证与Hibernate的完整示例.