有没有最好的方法来关闭phpmyadmin令牌检查?

时间:2014-10-27 17:41:46

标签: phpmyadmin

我是唯一一个在我的开发机器(家用电脑)上工作的人,它有一个Ubuntu操作系统。我不关心在生产服务器上必不可少的安全性。我讨厌如果我让phpmyadmin停留太长时间出现的令牌不匹配错误。所以我在第483到486行攻击了libraries / common.inc.php,强制phpmyadmin始终认为令牌匹配。

$token_mismatch = false;
/*if (PMA_isValid($_REQUEST['token'])) {
    $token_mismatch = ($_SESSION[' PMA_token '] != $_REQUEST['token']);
}*/

这是解决这个问题的最好方法吗?这可能会搞砸其他事吗?

3 个答案:

答案 0 :(得分:2)

禁用令牌:

库/ common.inc.php

/*
$token_mismatch = true;
if (PMA_isValid($_REQUEST['token'])) {
    $token_mismatch = ($_SESSION[' PMA_token '] != $_REQUEST['token']);
}
*/
$token_mismatch = false;

答案 1 :(得分:0)

这应该没问题,但您也可以在config.inc.php中增加$cfg\['LoginCookieValidity'\]的值。请注意,您还必须增加PHP设置session.gc_maxlifetime以匹配,因为PHP设置会覆盖phpMyAdmin,如果它更小。这将阻止您的会话过期。

关于问题的不匹配令牌部分,可能与即将到期的会话直接相关但不是预期的结果(您应该得到一个对话通知,告知您的会话已过期并重定向到登录界面)。我看到的主要原因是answered here并且通常是因为PHP有​​一个配置错误的session.save_path目录(要么已被注释掉,要么不存在,或者权限不正确。)

如果做不到这一点,最近做了一些工作来改善令牌不匹配错误发生的时间,但这似乎与你所看到的问题没有直接关系。但是,您可以下载当前的" master"快照(https://github.com/phpmyadmin/phpmyadmin/并查找右侧的"下载ZIP"链接),或者我建议您查看版本4.3一旦它可用,这应该很快。

答案 2 :(得分:0)

在新版本中,只需将true更改为false中的libraries/common.inc.php即可。但不建议在生产服务器中使用。

$token_mismatch = false;