日期:2014-05-18  浏览次数:20398 次

求一个ASP.NET JS 找回用户密码现实思路及源码。
求一个ASP.NET JS 找回用户密码现实思路及源码。 完全没有了思路,特别是发送邮件没做过。望知道的朋友给点指导谢谢!
★★★★★★★★★★★★★★★★★★★★★★★★★不胜感激★★★★★★★★★★★★★★★★★★★★

------解决方案--------------------
发送邮件,这个不用说了
①系统自动生成一个随机密码到发用到用户邮箱!,如果密码保存的是明文,例如csdn,可以直接把密码发到用户邮箱
②发送一个连接地址到用户注册邮箱,用户登录邮箱点击地址,地址的参数可以包括用户ID,
并支持加、解密的,用户打开这个地址,后台解密这个ID
让用户重新输入地址(等同于修改密码)
欢迎补充哈哈
------解决方案--------------------
生成一个随机的密码放到用户那边,然后邮件给用户他的最新的密码(邮件的地址是用户注册的时候提供的),然后让用户用这个密码打登录。
------解决方案--------------------
加密的办法比较多 比较流行的就是md5 md5+加盐,微软自带的也有很多加密 比如sha256
Demo
C# code

    /// <summary>
        /// sha256加密函数
        /// </summary>
        /// <param name="ss">需要加密的字符串</param>
        /// <returns></returns>
        public string getsha256(string str)
        {
            SHA256 sha = new System.Security.Cryptography.SHA256Managed();
            byte[] shaByte;
            shaByte = sha.ComputeHash(Encoding.Default.GetBytes(str));
            sha.Clear();
            return Convert.ToBase64String(shaByte);
        }

------解决方案--------------------
探讨
发送邮件,这个不用说了
①系统自动生成一个随机密码到发用到用户邮箱!,如果密码保存的是明文,[size=24px]例如csdn[/size],可以直接把密码发到用户邮箱

------解决方案--------------------
探讨

引用:
发送邮件,这个不用说了
①系统自动生成一个随机密码到发用到用户邮箱!,如果密码保存的是明文,例如csdn,可以直接把密码发到用户邮箱


兄弟小心CSDN封杀你呀

------解决方案--------------------
2个技术点:
1.发邮件
2.加密
------解决方案--------------------
C# code

/// <summary>
    /// 发送邮件的功能
    /// 引用方式:

    /// </summary>
    public class emailHelp
    {
        /// <summary>
        /// 发送邮件(1-5为发件人的信息;6-10为收件人信息)

        /// </summary>
        /// <param name="SendID">发件人邮箱账号</param>
        /// <param name="SendPass">发件人邮箱密码</param>
        /// <param name="SendName">发件人名称</param>
        /// <param name="host">Smtp服务器</param>
        /// <param name="port">smtp端口</param>
        /// <param name="ReceiveID">接收人邮箱账号</param>
        /// <param name="ReceiveName">接收人姓名</param>
        /// <param name="Title">邮件标题</param>
        /// <param name="Content">邮件正文</param>
        /// <param name="fj">邮件附件</param>
        public static void SendEmail(string SendID, string SendPass, string SendName, string host, int port, string ReceiveID, string ReceiveName, string Title, string Content, string fj)
        {
            try
            {
                #region 发送邮件

                SmtpClient smtp = new SmtpClient(); //实例化一个SmtpClient
                smtp.Port = port;
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.Host = host; //指定 smtp 服务器地址
                smtp.UseDefaultCredentials = false;
                smtp.Credentials = new NetworkCredential(SendID.Trim(), SendPass);
                MailMessage mm = new MailMessage(); //实例化一个邮件类
                mm.Priority = MailPriority.Normal; //邮件的优先级
                //发件人邮箱地址
                mm.From = new MailAddress(SendID.Trim(), SendName);

                mm.To.Add(new MailAddress(ReceiveID, ReceiveName));
                //邮件标题和编码格式


                mm.Subject = Title;
                mm.SubjectEncoding = System.Text.Encoding.UTF8;


                //邮件正文是否是HTML格式和编码格式


                mm.IsBodyHtml = true;
                mm.BodyEncoding = System.Text.Encoding.UTF8;
                //邮件正文
                mm.Body = Content;
                //