分页: 1 / 1

phpBB3的数据库用户应当给什么样的权限好呢?

发表于 : 2018年7月3日 11:58
baoang
MySQL数据库里建了个phpbb的数据库给论坛用,同时也新建了一个专用的账号,就是说不打算把root这个默认最高级账号直接用于论坛程序,只打算用新建的专用账号来处理论坛数据库连接和操作,这样应当能起到一定的安全保障作用吧。

但是在具体处理的时候,发现如果只是新建一个账号,那么系统默认给出的也是高级账号,于是想,能不能把新建账号的权限给到所能给的最低呢?
Image 077.png
象是这样的情况,我不把phpbb这个MySQL的账号设给它全局权限,只指定给它用于phpbb数据表的权限。比如select、insert之类的第一栏(数据那栏)的肯定要给,后面(比如结构、管理)我就没有给,后来发现:

1. purge cache出问题,报ajax错误;
2. resynchronise dotted topics出问题,报下列错误

代码: 全选

General Error
SQL ERROR [ mysqli ]

DROP command denied to user 'phpbb'@'localhost' for table 'phpbb_topics_posted' [1142]

SQL

TRUNCATE TABLE phpbb_topics_posted

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/phpbb/db/driver/driver.php
LINE: 996
CALL: trigger_error()

FILE: [ROOT]/phpbb/db/driver/mysqli.php
LINE: 193
CALL: phpbb\db\driver\driver->sql_error()

FILE: [ROOT]/phpbb/db/driver/factory.php
LINE: 329
CALL: phpbb\db\driver\mysqli->sql_query()

FILE: [ROOT]/includes/acp/acp_main.php
LINE: 283
CALL: phpbb\db\driver\factory->sql_query()

FILE: [ROOT]/includes/functions_module.php
LINE: 676
CALL: acp_main->main()

FILE: [ROOT]/adm/index.php
LINE: 82
CALL: p_master->load_active()
看到其中有DROP和TRUNCATE字样,意识到应当给结构一栏权限。

但是再其后的GRANT等最后一栏呢?是否在其它操作中会需要?

Re: phpBB3的数据库用户应当给什么样的权限好呢?

发表于 : 2018年7月3日 13:33
davidyin
既然用了指定用户,那就对该数据库给足权限好了。以後有升级,或者安装扩展都有用到。

Re: phpBB3的数据库用户应当给什么样的权限好呢?

发表于 : 2018年7月3日 17:49
baoang
davidyin 写了: 2018年7月3日 13:33 既然用了指定用户,那就对该数据库给足权限好了。以後有升级,或者安装扩展都有用到。
多谢!