2015-04-04 2 views
0

Я разрабатываю динамический веб-проект jsp на затмении.Лучший подход к поиску в Интернете

Я хочу создать сайт с функцией входа в систему. Я намерен хранить учетные записи пользователей и пароли в базе данных MySQL. Конечно, разные пользователи имеют разные роли и права на доступ к различным веб-страницам. Каков наилучший подход к его внедрению?

До сих пор, я знаю, что эти подходы:

1) Пользователь вводит учетные записи/пароли в login.jsp. Затем LoginServlet подключается к базе данных MySQL для проверки правильности. AuthenticationFilters гарантирует, что только пользователи с правами могут получить доступ к определенным страницам.

2) Используйте проверку подлинности на основе ролей путем объявления ролей пользователей в web.xml. Я считаю, что этот подход не является гибким, потому что мне нужно объявить роли заранее.

3) Используйте методы входа/выхода HttpServletRequest. Я не изучал его.

Правильно ли я понимаю? Может ли кто-нибудь дать мне несколько предложений? Некоторые подсказки были бы очень полезны!

Кроме того, я знаю, что использование POST для отправки паролей недостаточно безопасно. Многие веб-сайты предлагают использовать HTTPS-соединения. Так что, если использовать HTTPS-соединения, влияет ли это на подход, который я выбираю для реализации функции входа?

Спасибо!

-

Теперь я знаю, что нужно использовать Spring. Но весна мне кажется трудной ... На весеннем веб-сайте я не могу найти ссылку на скачивание файлов jar. В руководстве пользователя говорится, что мне нужно использовать Gradle или Maven, которые я раньше не использовал, и понятия не имею, зачем они мне нужны. Кроме того, есть много весенних проектов. Какой из них выбрать? Весенняя рамка?

-

ответ

1

Вы изучали использование Spring Security? Он построен именно для этого. Вы не должны быть знакомы с весной, но это может помочь. Вот несколько руководств, которые используют проверку подлинности базы данных:
1: Spring Security Authentication and Authorization Example with Database Credentials
2: Spring Security Login Example with Database

Edit:
Вам не нужно Maven или Gradle. Вы можете просто добавить банки в свой путь сборки, и они будут работать. Единственными проектами, которые необходимо реализовать для входа в систему, является Spring Framework и Spring Security.

Чтобы использовать Spring Security без Maven или Gradle:
Скачать Spring Framework банки, распаковать их, и добавить их в свой проект и построить путь. Вероятно, это хорошая идея, чтобы найти приветственный мировой учебник с использованием Spring, чтобы вы начали. Быстрый поиск в Google должен принести много результатов.

После того, как у вас есть Spring, реализованный в вашем проекте, загрузите банки Spring Security, разархивируйте их и добавьте их в свой путь сборки. Ссылки на обучающие материалы, которые я опубликовал ранее, помогут вам начать работу. Они могут пройти немного времени, чтобы пройти, и вы не можете точно понять, что происходит за кулисами, но как только вы его настроите, работа отличная. Я также не уверен, что вы используете конфигурацию xml или конфигурацию Java, но я считаю, что эти учебники предназначены для xml.

Spring Security был построен таким образом, чтобы его можно было добавить в любой проект, и вы можете работать с базовой конфигурацией примерно за 15 минут. После того, как вы получите базовый вход в систему (он будет использовать общую форму входа), вы можете найти, как реализовать свою собственную форму входа, добавить разрешения или ограничения для пользователей и URL-адресов, добавить пользовательские фильтры и т. Д. Я призываю вас потратьте некоторое время на изучение этого, поскольку он очень гибкий и настраиваемый.

+0

спасибо! – cht

+0

Я задал еще один вопрос, связанный с этим. (Http://stackoverflow.com/questions/29470880/spring-framework-and-spring-security-tutorials-version-4-x-x) – cht

Смежные вопросы