zoukankan      html  css  js  c++  java
  • WisDom.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的定时任务

     

     

     

     

     

     

  • 相关阅读:
    tmp:算法数据结构
    [转]Open Live Writer 配置
    GCC ,Clang 与 make,cmake 一览
    概率统计(1):数据分布
    ISP基础(31):Lost Frame Strategy
    支付宝对接授权及加好友
    css实现定宽高比(非内容撑出)
    display:table实现多列等高布局
    vue挂载全局组件
    两个数组根据指定字段去重
  • 原文地址:https://www.cnblogs.com/crystal189/p/3688247.html
Copyright © 2011-2022 走看看