CI :在没有更新权限的情况下处理数据库中的会话


ci : handling session in a database without update privilege

所以出于安全原因,我希望我的一个数据库用户只有选择/插入权限......所以一切正常,但问题是我想将我的会话存储在数据库中,它需要 UPDATE 权限.

所以这是我的 2 个选项:

1 - 而不是更新只是删除/插入每个更改的新会话(我不知道会话是如何工作的,我刚才说的可能听起来像个笑话! )

2 - 仅对会话使用具有 UPDATE 权限的其他数据库帐户

这两种方法中的任何一种都可能吗?

我已经查看了会话.php我能找到的唯一数据库参考是这个

elseif ($driver = config_item('sess_driver'))
{
    $this->_driver = $driver;
}
// Note: BC workaround
elseif (config_item('sess_use_database'))
{
    $this->_driver = 'database';
}

我直言,最好为会话使用不同的会话驱动程序(例如 Redis 或 Memcached)。

这种方法将为您提供更大的灵活性和速度。所有操作都在内存中执行,因此读取和写入将很快。

有关会话驱动程序的更多详细信息,请查看会话库文档。