读书笔记_mysql必知必会_28_访问控制
目录
访问控制
MySQL服务器的安全基础是:用户应该对他们需要的数据具有适当的访问权,既不能多也不能少。换句话说,用户不能对过多的数据具有过多的访问权。
考虑以下内容:
多数用户只需要对表进行读和写,但少数用户甚至需要能创建和
删除表;
某些用户需要读表,但可能不需要更新表;
你可能想允许用户添加数据,但不允许他们删除数据;
某些用户(管理员)可能需要处理用户账号的权限,但多数用户
不需要;
你可能想让用户通过存储过程访问数据,但不允许他们直接访问
数据;
你可能想根据用户登录的地点限制对某些功能的访问。
管理用户
MySQL用户账号和信息存储在名为mysql的MySQL数据库中。一般不需要直接访问mysql数据库和表。
创建用户账号
为重新命名一个用户账号,使用RENAME USER语句
删除用户账号
设置访问权限
在创建用户账号后,必须接着分配访问权限。新创建的用户账号没有访问权限。它们能登录MySQL,但不能看到数据,不能执行任何数据库操作。
为设置权限,使用GRANT语句。GRANT要求你至少给出以下信息:
要授予的权限;
被授予访问权限的数据库或表;
用户名。
GRANT和REVOKE可在几个层次上控制访问权限:
整个服务器,使用GRANT ALL和REVOKE ALL;
整个数据库,使用ON database.*;
特定的表,使用ON database.table;
特定的列;
特定的存储过程。
更改口令