Реализация базовой аутентификации Spring MVC 3.0 - PullRequest
3 голосов
/ 01 ноября 2010

В настоящее время я преобразовываю свое веб-приложение на Java с помощью Spring MVC Framework из ASP.NET (хороший способ изучить его, хотя - :)) Мне нужно реализовать аутентификацию в моем приложении: пожалуйста, скажите, хорош ли мой подход идостаточно профессионально, а если нет, то как лучше всего это сделать:

Прежде всего я пишу класс User, который содержит всю информацию о текущем имени пользователя / фамилии / email / id / etc ....

class User implements Serializable{
private String firstName;
private String lastName;
private Long id;
private String email;

///Settters and Getters

}

Я реализую класс Named DlSession и реализую его на уровне sesison.

<bean id="MySession" class="DlSession" scope="session">
<aop:scoped-proxy/>

class DlSession implements Serializable{
private User currentUser;

public DlSession(){}

// getters and setters:
}

Когда пользователь отправляет свой пользователь / пароль, я проверяю учетные данные и, если пользователь существует, извлекает всеДанные пользователя для экземпляра класса User.Затем я устанавливаю currentUser в сеансе, чтобы b пользователь, которого я получил:

mySesison.setCurrentUser(user);

Для проверки подлинности мне нужно проверить:

if (mySession.getcurrentUser() == null)
//return unauthenticated 
else 
//return authenticated

Чтобы выйти из системы, я простоделать:

mySession.setcurrentUser(null);

Является ли этот подход правильным?любые предложения более чем приветствуются.:)

1 Ответ

6 голосов
/ 01 ноября 2010

Если вы уже используете SpringMVC , почему бы вам не использовать SpringSecurity ( manual )?Он имеет все встроенные компоненты, необходимые для настройки аутентификации на основе форм или базовой аутентификации .И вы можете легко добавить новые методы аутентификации в будущем.

EDIT : см. Также этот вопрос для возможного решения с использованием Spring Security.

...