WisDom.Net 框架设计(四)_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > WisDom.Net 框架设计(四)

WisDom.Net 框架设计(四)

 2014/4/28 18:31:48  Wang.Crystal  博客园  我要评论(0)
  • 摘要:WisDom.Net----用户安全1.用户单机登录正如其名这里要求其实就是显示用户只能在一台电脑上登录。防止多处登录,这里简单的说一下实现原理,我们在这里使用session+cookie的方法来实现如下图所示(1)输入用户名密码(2)校验用户名密码格式是否正确(3)传入用户名密码(4)校验用户密码是否正确,返回登录LoginGuid(5)用户名密码是否正确(6)判断用户在session中是否存在,存在即更新用户LoginGuid,不存在则新增,并在cookie中写入LoginGuid(7
  • 标签:.net net 设计

WisDom.Net  ----用户安全

1.用户单机登录

    正如其名这里要求其实就是显示用户只能在一台电脑上登录。防止多处登录,这里简单的说一下实现原理,我们在这里使用session +cookie 的方法来实现  如下图所示

   

(1) 输入用户名密码

(2) 校验用户名密码格式是否正确

(3) 传入用户名密码

(4) 校验用户密码是否正确,返回登录LoginGuid

(5) 用户名密码是否正确

(6) 判断用户在session中是否存在,存在即更新用户LoginGuid,不存在则新增,并在cookie中写入LoginGuid

(7) 传入LoginGuid

(8)判断用户LoginGuid是否存在。不存在即提示下线

 

2.用户密码安全性

     1. 我们这里采用 AES 做为加密算法

     2.为了防止用户输入密码过于简单,我们这里在密码前加上一些特殊字符,强化密码的复杂度

    

/// <summary>
        /// 加密
        /// </summary>
        /// <param name="PassWord"></param>
        /// <returns></returns>
        public static string Encryption(string PassWord)
        {
            return WisDomSecurityUnit.AESEncrypt(Md5Key + PassWord, AESEncryptKey);
        }
        /// <summary>
        /// 解密
        /// </summary>
        /// <param name="PassWord"></param>
        /// <returns></returns>
        public static string Decryption(string PassWord)
        {
            string pwd = WisDomSecurityUnit.AESDecrypt(PassWord, AESEncryptKey);
            if (!pwd.Contains(Md5Key))
            {
                return string.Empty;
            }
            pwd = pwd.Substring(Md5Key.Length, (pwd.Length - Md5Key.Length));

            return pwd.Trim();
        }

3.用户数据安全性

     1.严格的权限控制(在下一篇博文中详细的说一下)

         目前的想法有2个的。 1。用户只能删除和编辑自己的创建的数据,2.用户可以修改和编辑比自己权限小的数据

     2.数据备份 这里可能会使用mysql的定时任务

 

 

 

 

 

 

发表评论
用户名: 匿名