如何做一个找回密码的功能
时间:2011-12-03
来源:互联网
我想实现一个找回密码的功能。模仿skype的找回密码方式。
1.用户只要填写对注册时用的邮箱,就把一个临时密码发到他的邮箱里。
2.这个临时密码24小时有效。
邮件的什么的我会,但有以下两点不明白。
1.临时密码怎么弄
2.如何让发送的临时密码24小时失效呢?
不能把密码直接发给用户的,因为存入数据库是密码已经加密。
1.用户只要填写对注册时用的邮箱,就把一个临时密码发到他的邮箱里。
2.这个临时密码24小时有效。
邮件的什么的我会,但有以下两点不明白。
1.临时密码怎么弄
2.如何让发送的临时密码24小时失效呢?
不能把密码直接发给用户的,因为存入数据库是密码已经加密。
作者: colood 发布时间: 2011-12-03
开始我这么想的,用随机函数做个密码,发邮件给丢失密码者,同时把数据库以前的密码用这个临时密码替换掉。这样用户就可以用临时密码登陆了。可是还要做到临时密码24小时候失效,如果把数据库原有密码替换掉了,用户在24小时之内没有立即登陆,那不就把数据库原有的用户密码改错了吗?
作者: colood 发布时间: 2011-12-03
这个简单啊,我做过,临时密码加密后放在你给他的邮件连接后面,在用这个链接进入系统时取得加密啊密码和数据库的密码加密后检测,顺便做有效时间check,就ok
如果24小时过后,用户用临时密码进入,提示用户该密码失效,重新发送mail到邮箱。。
如果24小时过后,用户用临时密码进入,提示用户该密码失效,重新发送mail到邮箱。。
作者: jnhcd 发布时间: 2011-12-04
引用
以前做过认证程序。。你说的这种等于临时PIN认证形式。。。
简单点思路
你可以设计一个PIN的数据表。里面包含编号,用户id,PIN值,创建时间,过期时间
程序逻辑:
1. 配置文件配置一个OTP的生命周期。。
2. 点击找回密码,输入邮箱名,后台验证邮箱是否正确,正确则取出用户账户id,否则返回提示。
3. 验证该账户id是否有未过期的PIN,有则直接进行认证,没有则随机生成6位字符和数字组合一起存入PIN表并发送到邮箱。其中 过期时间=当前时间+配置的生命周期
4. 经过了前面三步,这里就可以确定用户一定有未过期的PIN码,所以此步直接认证PIN码
5. 认证成功,则提示用户设置新密码。。否则,继续认证。。
上述是一个最简单的实现。。
以前做过认证程序。。你说的这种等于临时PIN认证形式。。。
简单点思路
你可以设计一个PIN的数据表。里面包含编号,用户id,PIN值,创建时间,过期时间
程序逻辑:
1. 配置文件配置一个OTP的生命周期。。
2. 点击找回密码,输入邮箱名,后台验证邮箱是否正确,正确则取出用户账户id,否则返回提示。
3. 验证该账户id是否有未过期的PIN,有则直接进行认证,没有则随机生成6位字符和数字组合一起存入PIN表并发送到邮箱。其中 过期时间=当前时间+配置的生命周期
4. 经过了前面三步,这里就可以确定用户一定有未过期的PIN码,所以此步直接认证PIN码
5. 认证成功,则提示用户设置新密码。。否则,继续认证。。
上述是一个最简单的实现。。
作者: kouyiSC 发布时间: 2011-12-04
配置文件配置一个PIN的生命周期。。
作者: kouyiSC 发布时间: 2011-12-04
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28