利用cookie实现自动登录

本文介绍了什么叫自动登录,如何利用cookie实现自动登录,以及可能存在的安全问题及相应的解决方案

操作方法

  • 01

    什么是自动登录? 所谓自动登录就是当用户在访问某一站点的时候不用再输入用户名和密码,直接登录。例子有很多:比如163邮箱的登陆页,如果用户登录的时候勾选了“十天内免登录”,则未来十天内用户访问163邮箱的时候就不用再输入用户名和密码了,只要在浏览器里面输入mail.163.com,则自动跳转到邮箱首页。

  • 02

    如何实现自动登录? 由于HTTP请求时无状态的,客户端必须携带一些标识自己身份的信息才有可能完成自动登录。只有cookie能完成这个任务。 大致思路就是: 1、用户首次登录的时候,选择“N天内免登录”; 2、系统登录请求返回的时候,往客户端写cookie,cookie中包含用户的登录名,有效期为N天。 3、用户下次再访问该网站的时候,携带cookie; 4、系统根据cookie中的用户名,调用登录的方法,实现自动登录。

  • 03

    安全性的考虑。 由于cookie是可以被伪造的,所以上述的方案有以下安全隐患: 1、修改用户名,这样就可以随便用其他人的账号登录了; 2、修改cookie的有效期,这样当别人拿到你的电脑的时候,即使已经过了cookie的有效期,仍然可以登陆。 对应的解决思路为: 1、在cookie中增加难以伪造的信息,并且和用户名一一对应。其实密码具备这两个特点,但是密码未经加密就放置在cookie中,不安全。可以选择使用用户的sessionId来做,同时将sessionId加密。这时就需要在服务器端建表记录这种对应关系,假设该表为表A。 2、在服务器端记录用户cookie的失效时间。同样在表A中记录。 修改之后的思路就变成了: 1、用户首次登录的时候,选择“N天内免登录”; 2、系统登录请求返回的时候,往客户端写cookie,cookie中包含用户的登录名,加密后的sessionId,有效期为N天。 3、用户下次再访问该网站的时候,携带cookie; 4、系统根据cookie中的用户名,加密后的sessionId,判断cookie是否过期,校验sessionId和用户名是否匹配,调用登录的方法,实现自动登录。

(0)

相关推荐

  • 使用cookie实现自动登录

    使用cookie实现自动登录 操作方法 01 1.新建login.jsp和index.jsp 02 2.在login.jsp中新建表单,跳转到index.jsp并提交name 03 3.在index. ...

  • 新浪微博自动登录为什么不生效?

    已经在登录时勾选了“下次自动登录“再次打开浏览器依就次次需要登录?您需要检查浏览器的隐私设置,选中“接受第三方Cookie”,才能记住微博的登录状态。以下是主流浏览器隐私设置方法,请对号入座: IE、 ...

  • 如何给电脑上的360浏览器设置开启自动登录

    今天给大家介绍一下如何给电脑上的360浏览器设置开启自动登录的具体操作步骤.1. 打开我们电脑上的360浏览器,点击登录按钮进行登录2. 在登录页面,我们需要将左下角的下次自动登录勾选上.3. 然后在 ...

  • windows10开机自动登录(电脑上怎么设置自动登录)

    从windows8开始支持Windows Live帐号登录开始我们高兴地看到,每一次启动后的输入密码操作,开始成为一个挥之不去的麻烦.其实这输密码并非Win8首创,之前的XP.Win7都有类似要求,只 ...

  • 提示开启Cookie之后才能登录怎么解决

    有一个写的朋友,突然电脑出了问题,发现登录不上了,输入用户名和密码后,在登录窗口出现一行红色提示"开启Cookie之后才能登录",重启好几次浏览器,都是这样,不知如何解决,找到了我 ...

  • win8自动登录设置教程

    从windows8开始支持Windows Live帐号登录开始我们高兴地看到,每一次启动后的输入密码操作,开始成为一个挥之不去的麻烦.其实这输密码并非Win8首创,之前的XP.Win7都有类似要求,只 ...

  • win7实现开机自动登录并自动连接宽带拨号方法

    win7实现开机自动登录并自动连接宽带拨号方法

  • 如何在Windows中启用自动登录即自动执行登录过程

    本文介绍如何通过在注册表数据库中存储密码和其他相关信息,将 Windows 配置为自动执行登录过程。此功能允许其他用户启动您的计算机并使用您建立的帐户自动登录。 重要说明:如果启用自动登录,可以更方便 ...

  • Windows7和WinXP下如何实现不输密码自动登录系统的设置方法介绍

    在Win7或者WinXP下,如果用户设置了密码,每次登陆都要输入,很麻烦。如何能够无需输入密码自动登录Win7或者WinXP系统呢? 下面就介绍这个方法: 1、在开始菜单搜索框输入“rundll32 ...