具有授权选项限制的SQL

时间:2013-11-05 20:11:43

标签: mysql sql grant

授予用户206读取和修改教师和班级表的权限。该用户可以授权其他人阅读和修改课程,但不能授课。

关于我的问题的第一部分:

GRANT 
    SELECT, INSERT, DELETE, UPDATE
ON 
    faculty, class
TO 
    U206; 

我不知道如何授权他人只读课而不是教师。使用WITH GRANT OPTION时是否有限制?

1 个答案:

答案 0 :(得分:2)

您应该为GRANTclass表单独发布faculty,并仅在授予WITH GRANT OPTION

权限时使用class
GRANT SELECT, INSERT, DELETE, UPDATE ON class TO u206 WITH GRANT OPTION;
                                                      ^^^^^^^^^^^^^^^^^
GRANT SELECT, INSERT, DELETE, UPDATE ON faculty TO u206;

现在,如果我们以u206身份登录,我们就可以将class的权限授予其他用户

mysql> grant select, insert, delete, update on class to u207;
Query OK, 0 rows affected (0.00 sec)

但无法在faculty

上执行相同的操作
grant select, insert, delete, update on faculty to u207;
ERROR 1142 (42000): GRANT command denied to user 'u206' for table 'faculty'