Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 允许用户登录持久性_Php_Mysql - Fatal编程技术网

Php 允许用户登录持久性

Php 允许用户登录持久性,php,mysql,Php,Mysql,可能重复: 我想用COOKIES为我的用户提供登录持久性。但是,我读得越多,学到的越多,我就越意识到它们是可以被篡改的。因此,让它们不是最安全的方法。我只存储用户的id,以便在登录时跨多个页面记住它们。当然,我知道会话是最好的方式,但仅限于安全方面。对吗?它们不像饼干那样有利于持久性,这就是我想要的。这样用户就不必在每次关闭和重新打开浏览器时重新登录。我能做什么?虽然这在评论中已经得到了回答,但我要强调一个要点:登录持久性意味着什么都没有,只不过是将用户登录(或其中很大一部分)从应用程序的责任

可能重复:


我想用COOKIES为我的用户提供登录持久性。但是,我读得越多,学到的越多,我就越意识到它们是可以被篡改的。因此,让它们不是最安全的方法。我只存储用户的id,以便在登录时跨多个页面记住它们。当然,我知道会话是最好的方式,但仅限于安全方面。对吗?它们不像饼干那样有利于持久性,这就是我想要的。这样用户就不必在每次关闭和重新打开浏览器时重新登录。我能做什么?

虽然这在评论中已经得到了回答,但我要强调一个要点:登录持久性意味着什么都没有,只不过是将用户登录(或其中很大一部分)从应用程序的责任和控制转移到浏览器的责任上,你无法控制在你无法控制的设备上运行的操作系统

这不必像听起来那么可怕,例如,一个面向内部的webapp,其所有登录都来自安全结构(如域)中的受监督操作系统,这可能是完全可以接受的


OTOH,根据你的应用程序处理的数据的种类和价值,这可能是绝对不可接受的:从某种公共互联网终端登录以使用登录持久性更新其医疗数据的用户在某些司法管辖区可能会让你坐牢。因此,让我建议,在研究登录持久性的方法之前,您需要重新考虑if上下文

,这是重复的问题太多,无法列出。简单回答:使用Cookie在数据库中存储与真实会话数据关联的会话ID,根据需要清除旧会话。@Jack,有点希望答案引用了
session\u regenate\u ID
。@ficuscr session management本身是另一个问题