在会话变量中存储密码是否安全?
例如,使用将采用提交给自己的形式.
例如,更改分类页面,用户首先输入密码,然后如果pass = ok,则显示表单以更改分类.全部在同一个php页面上.
但是每当在php页面的“更改”部分上传图片时,表单必须再次提交给自己.
我应该在这里使用商店会话密码来验证用户实际上是用户,并且它是安全的吗?
换句话说,存储这样的东西是否安全:
if($pass==$row['password']){ // If password was correct
$_SESSION['pass_ok']='1';
}
谢谢
解决方法:
Camran,你要做的是维护php会话的标准方法.实际上,您并未在会话中存储密码,而只是存储此特定用户已登录的信息.
$_SESSION [ ‘pass_ok’] = ‘1’;
在每个页面上你只需要做一个session_start()并检查这个会话是否已经设置为1,如果是,他们会假设他被记录并继续进行,否则重定向到登录页面.
如果有人获得会话ID,那么他们肯定可以访问用户会话.您可以做一些事情来使其更安全.
>使用SSl(https),很难嗅探数据并获取会话ID
>在用户登录时在会话中维护客户端IP,对于登录后的每个请求,检查请求是否来自同一个ip
>设置一个短会话超时,以便在空闲一段时间后会话自动超时.
标签:html,javascript,php,mysql,security
来源: https://codeday.me/bug/20190723/1517789.html