Spring Security 3 身份验证与 Hibernate 3(JPA) 注释的集成

Posted

技术标签:

【中文标题】Spring Security 3 身份验证与 Hibernate 3(JPA) 注释的集成【英文标题】:Integration of Spring Security 3 authentication with Hibernate 3(JPA) annotation 【发布时间】:2012-01-24 09:09:54 【问题描述】:

我正在寻找一些基于注释(即 JPA)和来自数据库的用户凭据的 最新 Spring 框架安全性与 Hibernate 集成的示例。我怎样才能做到这一点?我可以使用 Spring 进行密码编码和解码吗?

可用的解决方案之一是链接here,但这是基于带有 XML 配置的 Spring 2.5。我想避免使用 xml 并使用注释。

【问题讨论】:

【参考方案1】:

使用Spring source documentation。您需要的一切都在文档中提供。是的!您可以使用 spring 进行密码编码和解码。只需编写将扩展 org.springframework.security.authentication.encoding.MessageDigestPasswordEncoder 的编码类。

public class MyPassEncoder extends org.springframework.security.authentication.encoding.MessageDigestPasswordEncoder

   MyPassEncoder()
   super("MD5");

public String encodePassword(String rawPass, Object salt) 
   String encPass =  super.encodePassword(rawPass, salt);
   return encPass;


【讨论】:

该文档中没有给出基于 Annotation 概念的带有 Hibernate 的 Spring 安全性示例。 从 spring 安全文档下载示例 - 章节号。 4 static.springsource.org/spring-security/site/docs/3.1.x/…

以上是关于Spring Security 3 身份验证与 Hibernate 3(JPA) 注释的集成的主要内容,如果未能解决你的问题,请参考以下文章

使用 Spring Security 3 进行 LDAP 身份验证

使用 Spring security 2.0.3 的 LDAP 身份验证

不使用 Spring Security 身份验证?

Spring Security 3.1.4:由于anonymousUser身份验证无法访问目标页面

使用 Hibernate 的 Spring Security 3 数据库身份验证

Spring Security 3.1:Active Directory 身份验证和本地 DB 授权