Skip to content

Latest commit

 

History

History
53 lines (35 loc) · 1.24 KB

File metadata and controls

53 lines (35 loc) · 1.24 KB

权限管理

创建好用户之后,还需要给它授予合适的权限。权限过大有安全风险,权限过小又可能导致业务无法运行,因此权限管理的核心是“最小必要授权”。

权限的授予

授予权限通常使用 GRANT

GRANT SELECT, INSERT, UPDATE
ON shop.*
TO 'myuser'@'localhost';

这表示给用户 myuser@localhost 授予 shop 数据库下所有表的查询、插入和更新权限。

如果授予全部权限,可以写成:

GRANT ALL PRIVILEGES
ON *.*
TO 'myuser'@'%'
WITH GRANT OPTION;

不过这种权限很大,通常只适合管理账号,不适合普通业务账号。

权限的撤销

撤销权限使用 REVOKE

REVOKE INSERT, UPDATE
ON shop.*
FROM 'myuser'@'localhost';

撤销后,该用户将不再拥有这些对应权限。

查看权限

查看某个用户权限最常见的方式是:

SHOW GRANTS FOR 'myuser'@'localhost';

它会显示当前用户拥有的授权语句,便于快速确认权限情况。

小结

权限管理的常见动作就是:GRANT 赋权、REVOKE 撤权、SHOW GRANTS 查看结果。数据库安全的重点不在“能不能授予”,而在“是否只授予了必要权限”。