我锁定了IP地址.
这是否意味着用户只能使用相同的IP地址登录?或者用户是否会注销并且必须重新登录才能获得新会话?
if (isset($_SESSION['last_ip']) === false) {
$_SESSION['last_ip'] = $_SERVER['REMOTE_ADDR'];
}
if ($_SESSION['last_ip'] != $_SERVER['REMOTE_ADDR']){
session_unset();
session_destroy();
}
Run Code Online (Sandbox Code Playgroud)
Hal*_*yon 13
如果用户的IP地址发生更改,此代码将删除会话(注销).
因此,用户可以从任何IP地址登录,但如果更改则将被注销.
这可能有助于防止会话劫持,但如果您使用动态IP,它将无法正常工作,因为您的IP将不断变化.
小智 8
确实如此.如果用户的IP发生变化,他将被注销.虽然攻击者仍然可以模仿IP,但如果他知道,那么它就不是完全安全的.有关如何防止会话劫持的更多信息,请查看这些页面:
我也强烈推荐Chris Shiflett.他关于会话劫持的文章可以在这里找到:
http://shiflett.org/articles/session-hijacking