在JavaEE6中生成激活URL
我正在使用JavaEE6WebProfile开发一个web应用程序。我想通过电子邮件向新用户发送其帐户的激活链接。我应该如何实现这一点?我正在使用JSF2。是否有任何规范或建议的方法来执行此操作?激活URL会让人感觉软件服务正在处理“服务”请求在JavaEE6中生成激活URL,java,jsf-2,activation,Java,Jsf 2,Activation,我正在使用JavaEE6WebProfile开发一个web应用程序。我想通过电子邮件向新用户发送其帐户的激活链接。我应该如何实现这一点?我正在使用JSF2。是否有任何规范或建议的方法来执行此操作?激活URL会让人感觉软件服务正在处理“服务”请求 实现这项服务的好的候选者包括servlet,它将执行用户激活/验证并重定向到JSF成功页面我曾参与过一个项目,该项目要求用户确认其电子邮件id以激活其注册。密钥生成过程如下所示: 密钥创建 在users表中创建一列verification\u key,该
实现这项服务的好的候选者包括servlet,它将执行用户激活/验证并重定向到JSF成功页面我曾参与过一个项目,该项目要求用户确认其电子邮件id以激活其注册。密钥生成过程如下所示: 密钥创建
users
表中创建一列verification\u key
,该列保存用户的唯一验证密钥验证密钥
,并存储在其中。这将是独一无二的(出于实际目的,我不会讨论碰撞的可能性)key=Base64(Hash256(uniqueUserName+“+password))
旁注:顺便说一句,并没有什么限制您使用密码作为salt。您可以动态创建任意字符串作为salt
验证
验证\u键
是唯一的,所以从request参数中获取键
,并找到匹配的行李>
验证\u键
设置为空
(这也将减少冲突的可能性(如果有),并将用户带到“成功验证页面”您想要如何创建需要与激活URL一起发送的
键
,还是想要在JSF中生成图书标记URL?确切地说,用户注册,然后一个带有密钥的url被发送到他的电子邮件中,比如:点击激活你的帐户。可能是我可以从jsf访问url并获取密钥参数或其他相关信息:我以前从未真正使用过jsf2中的servlet,因为我从未真正需要它们。你能给我看一些代码片段吗?嗨。这是一个非常有用的答案,非常感谢。我想从您的实现中了解更多的事情。一旦用户被激活,你不必每次他尝试做某事时都再次检查,所以我应该有另一个表,比如“pending_users”,这样如果用户在用户表中,我就可以判断他被激活了?UUID.randomuid()
可以用来生成随机数