.Net 如何限制用户登录的方法

名词解析
       1.Cookies 按照英文单词翻译过来是“甜点”的意思。这个和我们计算机貌似没有什么关系。我们这里说的Cookies是指服务器在暂存在计算机上的一段资料。

2.Session 按照英文单词翻译过来是“会话”的意思。存在于服务器的内存中。

限制用户登录的一下场景
        1。比如QQ 我们在一处登录QQ之后。如果我们在另一台电脑上再次登录这个时候就会被踢下线

2。我使用的邮箱也有上面情况

这样做在很大的程度上面保证了。账号的安全。

怎么样实现
方法1 :    在用户登录时将用户登录状态记录数据库中,每次登录时我们在数据库中查找用户是否登录。如果已经登录,做出相关的业务处理
方法2:     把用户登录状态的存在Session中
        方法1明显有一个缺点,假设在服务器突然断电的情况下。是不是就悲剧了。这个已经登录的用户的状态就会乱,直接将导致用户无法再次登录所以我们这里选在Cookies 和Session  来实现这个场景

示例代码

代码如下:

if (Session["LOGIN_USER_LIST"] != null)
            {
                Dictionary<Guid,UserInfo>  Userlist=  Session["LOGIN_USER_LIST"] as Dictionary<Guid,UserInfo>;
                Guid LoginKey =new Guid();
                Guid.TryParse(CookieHelper.getCookie("LOG_USER_KEY"), out LoginKey);
                if (Userlist.Keys.Contains(LoginKey))
                {
                    //如何用户登录
                }
                else
                {
                    //如果用户没有登录
                }

}

希望上面简单的代码对大家有帮助

(0)

相关推荐

  • laravel5.2实现区分前后台用户登录的方法

    1.前台登录 直接使用laravel自带的auth php artisan make:auth 然后可以查看路由文件: Route::group(['middleware' => 'web'], function () { Route::auth(); Route::get('/home', 'HomeController@index'); }); 执行php artisan migrate 会发现生成了两张表. 2.后台登录 编辑配置文件 config\auth.php 添加guards中的a

  • vsftpd配置虚拟用户登录的方法

    yum安装vsftpd [root@localhost etc]# yum -y install vsftpd</font> 创建虚拟用户和密码 [root@localhost etc]# cd /etc/vsftpd [root@localhost vsftpd]# vim vuser.list 单行为用户名双行为密码 创建数据库文件 [root@localhost vsftpd]# db_load -T -t hash -f vuser.list vuser.db 提高虚拟用户的安全性 [

  • .Net 如何限制用户登录的方法

    名词解析       1.Cookies 按照英文单词翻译过来是"甜点"的意思.这个和我们计算机貌似没有什么关系.我们这里说的Cookies是指服务器在暂存在计算机上的一段资料. 2.Session 按照英文单词翻译过来是"会话"的意思.存在于服务器的内存中. 限制用户登录的一下场景        1.比如QQ 我们在一处登录QQ之后.如果我们在另一台电脑上再次登录这个时候就会被踢下线 2.我使用的邮箱也有上面情况 这样做在很大的程度上面保证了.账号的安全. 怎么样

  • Spring mvc 实现用户登录的方法(拦截器)

    用户登录时,将用户信息放到session中 package cn.woniubushiniu.controller; import cn.woniubushiniu.po.User; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import o

  • Django实现单用户登录的方法示例

    最近由于要毕业了写论文做毕设,然后还在实习发现已经好久都没有写博客了.今天由于工作需求,需要用Django实现单用户登录.大概意思就是跟QQ一样的效果,每个账号只能一个地方登录使用,限制账号的登录次数.由于用的是Django自带的认证,然后校验用户是否登录其实就是通过Session实现的.下面就简单分享一下怎么实现的吧. 单用户登录实现 在做用户登录认证的时候Django自带的有is_authenticated()方法.下面就是一个简单的认证过程. if request.user.is_auth

  • Laravel重写用户登录简单示例

    本文实例讲述了Laravel重写用户登录的方法.分享给大家供大家参考,具体如下: class AuthController extends Controller { // use ThrottlesLogins, AuthenticatesAndRegistersUsers; protected $redirectTo = 'admin/index'; protected $loginView = 'admin/login'; protected $guard = 'admin'; protec

  • jquery.cookie.js实现用户登录保存密码功能的方法

    本文实例讲述了jquery.cookie.js实现用户登录保存密码功能的方法.分享给大家供大家参考,具体如下: 需要导入的js有jquery.js和jquery.cookie.js <script type="text/javascript" src=" jquery-1.5.2.js"></script> <script type="text/javascript" src="jquery.cookie.

  • jQuery基于ajax实现页面加载后检查用户登录状态的方法

    本文实例讲述了jQuery基于ajax实现页面加载后检查用户登录状态的方法.分享给大家供大家参考,具体如下: 拥有会员功能的网站,如果会员已经登录,那么要显示相应的登录状态,而且这种显示的需求是在网站的每个页面都有的(目前国内网站貌似都是这么做的,还没有见过其他形式的状态显示方式),这样,在打开一个新的页面时就要知道这个会员是否已经登录,需要判断登录的状态. 1.解决方案. 为了能够实现在每一个页面判断会员登录状态的功能,我采用了页面时通过ajax传递参数通过后端返回的登录状态结果进行判断,当然

  • AngularJS实现用户登录状态判断的方法(Model添加拦截过滤器,路由增加限制)

    本文实例讲述了AngularJS实现用户登录状态判断的方法.分享给大家供大家参考,具体如下: 使用AngularJS的单页面应用时,由于是本地路由在控制页面跳转,但是有的时候我们需要判断用户是否登录来判断用户是否能进入界面. angularjs是mvc架构所以实现起来很容易也很灵活,我们只MainController里增加一个路由事件侦听并判断,这样就可以避免未登录用户直接输入路由地址来跳转到登录界面地址了 代码中的 $rootScope.user是登录后把用户信息放到了全局rootScope上

  • asp.net利用cookie保存用户密码实现自动登录的方法

    本文实例讲述了asp.net利用cookie保存用户密码实现自动登录的方法.分享给大家供大家参考.具体分析如下: 在asp.net中可以用cookie保存用户的帐户密码实现自动登录的功能,但是需要强调一下,cookie在客户端保存,是不安全的,推荐使用md5加密保存. 下面分析一下在asp.net中cookie的创建.提取与销毁的方法: 创建cookie 复制代码 代码如下: //向客户端写入Cookie HttpCookie hcUserName1 = new HttpCookie("unam

随机推荐