最好的网络登录方式

时间:2015-04-04 17:33:26

标签: spring jsp security login dynamic-websites

我正在eclipse上开发一个jsp动态Web项目。

我想创建一个具有登录功能的网站。我打算存储用户' MySQL数据库中的帐户和密码。当然,不同的用户具有访问不同网页的不同角色和权限。实施它的最佳方法是什么?

到目前为止,我知道这些方法:

1)用户在login.jsp中输入帐户/密码。 LoginServlet然后连接到MySQL数据库以检查它是否正确。 AuthenticationFilters将确保只有拥有权限的用户才能访问某些页面。

2)通过在web.xml中声明用户角色来使用基于角色的身份验证。我发现这种方法不灵活,因为我需要提前声明角色。

3)使用HttpServletRequest的登录/注销方法。我没有研究过它。

我的理解是否正确?有人能给我一些建议吗?一些线索会非常有帮助!

此外,我知道单独使用POST发送密码是不够安全的。许多网站建议使用HTTPS连接。因此,如果使用HTTPS连接,是否会影响我选择实施登录功能的方法?

谢谢!

-

现在,我知道我需要使用Spring。但是Spring对我来说似乎很难...在Spring网站上我找不到下载jar文件的链接。用户指南说我需要使用之前没有使用的Gradle或Maven,并且不知道我为什么需要它们。此外,还有很多Spring项目。我应该选择哪一个? Spring框架?

-

1 个答案:

答案 0 :(得分:1)

您是否考虑过使用Spring Security?它就是为此而建的。你不需要熟悉Spring,但它可能有所帮助。 以下是一些使用数据库身份验证的教程:
1:Spring Security Authentication and Authorization Example with Database Credentials
2:Spring Security Login Example with Database

编辑:
你没有Maven或Gradle。您可以简单地将jar添加到构建路径中,它们将起作用。您需要实现登录才能实现的唯一项目是Spring Framework和Spring Security。

使用没有Maven或Gradle的Spring Security:
下载Spring Framework罐子,解压缩,然后将它们添加到项目和构建路径中。使用Spring找到一个hello world教程来帮助你入门可能是一个好主意。快速谷歌搜索应该会产生很多结果。

在项目中实施Spring之后,下载Spring Security个jar,解压缩,并将它们添加到构建路径中。我之前发布的教程链接将帮助您入门。他们可能需要一段时间才能完成,你可能无法完全了解幕后发生的事情,但是一旦你得到它,就会有很好的工作。我也不确定您是使用xml配置还是Java配置,但我相信这些教程适用于xml。

构建Spring Security是为了将其添加到任何项目中,并在大约15分钟内启动并运行基本配置。在您获得基本登录信息后(它将使用通用登录表单),您可以搜索如何实现自己的自定义登录表单,向用户和网址模板添加权限或限制,添加自定义过滤器等。我鼓励您花一些时间学习它,因为它非常灵活和可定制。