a)应对登录的用户分配账户和权限
select user,host from mysql.user;
询问数据库管理员各个账户的作用与权限,输出结果是否与实际人员相符
b)应重命名或删除默认账户,修改默认账户的默认口令
查看默认用户是否重命名以及修改默认口令
c)应及时删除或停用多余的、过期的账户,避免共享账户的存在;
查看user表再访谈管理员表中用户与现实是否做到一一对应,且无共用,多余,过期的账户
d)应授予管理用户所需的最小权限,实现管理用户的权限分离
select Host,User,File_priv,Shutdown_priv,grant_priv from user;
#
file_priv 加载服务器主机上的文件
grant_priv 数据库、表、存储过程或函数
shutdown_priv 关闭服务器
#
查看各管理员账户权限设置是否与实际情况对应
注;此项至少要包括系统管理员和审计管理员才能算符合
e)应由授权主体配置访问控制策略,访问控制策略规定主体对客体的访问规则
- 登录不同的用户,验证是否存在越权访问的情形
注;通常情况下是由系统管理员来配置策略,基本上算默认符合 - 访问控制策略
询问输出的以下权限列是是否与管理员制定的访问控制策略及规则一致
mysql>select * from mysql.user\G
检查用户权限列表
mysql>select * from mysql.db\G
检查数据库权限列表
mysql>select * from mysql.tables_priv\G
检查用户表权限列表
f)访问控制的粒度应达到主体为用户级或进程级,客体为文件、数据库表级
此项主要检查访问的主体和客体是什么级别的
注;通常情况下数据库层面主体为用户及,客体为数据库表级