Spring MVC 3.0 基本认证实现
Posted
技术标签:
【中文标题】Spring MVC 3.0 基本认证实现【英文标题】:Spring MVC 3.0 Basic Authentication Implementation 【发布时间】:2011-05-03 08:04:37 【问题描述】:我目前正在使用来自 ASP.NET 的 Spring MVC 框架转换我的 Web 应用程序 tn Java(虽然是学习它的好方法 -:))我需要在我的应用程序中实现身份验证:请告诉我我的方法是否良好并且足够专业,如果不是最好的做法是什么:
首先,我正在编写 User 类,它包含有关当前用户名/姓/电子邮件/id/等的所有信息......
class User implements Serializable
private String firstName;
private String lastName;
private Long id;
private String email;
///Settters and Getters
我正在实现名为 DlSession 的类并在 sesison 级别上实现它。
<bean id="MySession" class="DlSession" scope="session">
<aop:scoped-proxy/>
class DlSession implements Serializable
private User currentUser;
public DlSession()
// getters and setters:
当用户提交他的用户/通行证时,我正在验证凭据,如果用户存在,则将所有用户数据检索到用户类的实例。然后我将 Session 中的 currentUser 设置为我检索到的用户:
mySesison.setCurrentUser(user);
为了验证身份验证,我需要检查:
if (mySession.getcurrentUser() == null)
//return unauthenticated
else
//return authenticated
从我刚刚做的系统中注销用户:
mySession.setcurrentUser(null);
这种方法正确吗?任何建议都更受欢迎。 :)
【问题讨论】:
【参考方案1】:如果您已经在使用 SpringMVC,为什么不也使用SpringSecurity (manual)? 它内置了您设置form-based- or basic-authentication 所需的所有组件。而且,您将来可以轻松添加新的身份验证方法。
编辑:另请参阅this question,了解使用 Spring Security 的可能解决方案。
【讨论】:
以上是关于Spring MVC 3.0 基本认证实现的主要内容,如果未能解决你的问题,请参考以下文章