但是,创建帐户呢?和#34;忘了密码"?大多数登录页面都有这些链接以及用户名和密码字段。 Spring的默认登录页面没有这些链接...在好的情况下,它可以支持"记住我" ...
Spring是否支持这些流程,创建帐户,忘记密码和更改密码? 如果答案是肯定的,你能指点我一些文件吗?
我已经搜索了这个问题但找不到任何东西。
谢谢!
答案 0 :(得分:14)
你完全正确。 AFAIK没有"泛型"实现这些流程的包。我刚刚搜索了很多这类代码,但一无所获。我认为@luizcarlosfx是对的,每个应用程序都有自己的需求,因此很难编写适合所有需求的通用应用程序。
修改强> 我看到了像#34这样的评论;实施起来并不那么困难"。真正。但你必须确保你处理所有情况。例如,如果用户尝试创建已存在的帐户,会发生什么?如果用户尝试创建已存在但不活动的帐户,会发生什么?密码的政策怎么样? (太长/太短/多少资金等)如何向用户发送带有激活链接的电子邮件?你是如何创建这个链接的?你怎么加密它?那些将收到链接点击并激活帐户的控制器呢?而且越来越多......
然而,我向前迈了一步,尝试编写可以回答大部分流量的代码 - 注册,忘记密码,更改密码等,以及足够安全的内容,以便应用程序能够使用它而不必担心它会被轻易入侵。
我已为此用例实施了一个JAVA项目。它是开源的,基于Spring-Security。发布版本在Maven-Central上,因此您不需要编译它,而是可以将其作为maven依赖项提取到您的项目中!
<dependency>
<groupId>com.ohadr</groupId>
<artifactId>authentication-flows</artifactId>
<version>1.5.0-RELEASE</version>
</dependency>
我认为它回答了你的问题...
对所有事情都有解释(如果缺少某些东西 - 请告诉我......)
您可以find here示例了解客户端应用程序的代码(即使用情况)。
这是main page of the project加上一个演示版和another demo is here(但这是一个应用程序,在升级到1.6.1之后需要使用带有&#34; nice&#34;域名的电子邮件登录 - nice.com。所以你不能真正用它来演示;使用第一个例子)。 这是一个使用auth-flow的客户端Web应用程序,README包含所有解释。
希望有所帮助!
答案 1 :(得分:0)
我认为appfuse是您想要的工具。这行来自它的文档:
AppFuse开箱即用,具有许多应用程序所需的功能,包括: