Mysql 用户是否可以在没有所有权限的情况下授予权限?

Mysql 用户是否可以在没有所有权限的情况下授予权限?,mysql,mariadb,Mysql,Mariadb,我想创建一个可以注册其他新用户的用户,但我不希望他拥有所有特权,看起来我在这里做错了什么 我试过以下方法 GRANT SELECT, INSERT, UPDATE ON database.* TO 'USER' IDENTIFIED BY '123456' WITH GRANT OPTION 但是,当我使用此用户帐户登录并尝试将权限授予另一个用户MySQL/MariaDB时,返回:不允许使用GRANT创建用户 有没有可能让一个只能在单个数据库上选择/插入/更新的用户将相同的权限授予新用户?简短

我想创建一个可以注册其他新用户的用户,但我不希望他拥有
所有特权
,看起来我在这里做错了什么

我试过以下方法

GRANT SELECT, INSERT, UPDATE ON database.* TO 'USER' IDENTIFIED BY '123456' WITH GRANT OPTION
但是,当我使用此用户帐户登录并尝试将权限授予另一个用户MySQL/MariaDB时,返回:
不允许使用GRANT创建用户


有没有可能让一个只能在单个数据库上选择/插入/更新的用户将相同的权限授予新用户?

简短回答:有。不仅是新帐户,还有任何现有帐户

基于:

可选WITH子句用于允许用户向其他用户授予权限。WITH GRANT OPTION子句允许用户将其在指定特权级别上拥有的任何特权授予其他用户

[……]

请注意,当您在特定权限级别授予用户“授予选项”权限时,该用户在该级别拥有(或将来可能授予)的任何权限也可以由该用户授予其他用户

因此,如文档所述,具有
选择
插入
、以及
更新
权限并具有
授予
选项的帐户可以向其他帐户提供相同的权限

但是,文件中有一些重要的细节需要注意:

  • 请注意您授予
    GRANT选项
    权限的对象,因为两个具有不同权限的用户可能可以组合权限
  • 假设您授予用户对数据库的
    INSERT
    权限。如果随后对数据库授予
    选择
    权限,并使用授予选项指定
    ,则该用户不仅可以向其他用户授予
    选择
    权限,还可以授予
    插入
    权限。如果您随后向数据库中的用户授予
    更新
    权限,则用户可以授予
    插入
    选择
    ,以及
    更新

  • 如果您打算允许其他帐户管理特权,如初级DBA或HR成员,考虑查看您的数据库权限审核过程,以确保意外补助金被识别和更正。

    < P>简短回答:是的。不仅是新帐户,还有任何现有帐户

    基于:

    可选WITH子句用于允许用户向其他用户授予权限。WITH GRANT OPTION子句允许用户将其在指定特权级别上拥有的任何特权授予其他用户

    [……]

    请注意,当您在特定权限级别授予用户“授予选项”权限时,该用户在该级别拥有(或将来可能授予)的任何权限也可以由该用户授予其他用户

    因此,如文档所述,具有
    选择
    插入
    、以及
    更新
    权限并具有
    授予
    选项的帐户可以向其他帐户提供相同的权限

    但是,文件中有一些重要的细节需要注意:

  • 请注意您授予
    GRANT选项
    权限的对象,因为两个具有不同权限的用户可能可以组合权限
  • 假设您授予用户对数据库的
    INSERT
    权限。如果随后对数据库授予
    选择
    权限,并使用授予选项指定
    ,则该用户不仅可以向其他用户授予
    选择
    权限,还可以授予
    插入
    权限。如果您随后向数据库中的用户授予
    更新
    权限,则用户可以授予
    插入
    选择
    ,以及
    更新

  • 如果您打算允许其他帐户管理特权,如初级DBA或HR成员,考虑查看您的数据库权限审核过程,以确保意外补助金被识别和纠正。

    对不起,对于迟发的答复,我不知道为什么使用语句<代码> Grand select,插入…
    不起作用,所以我使用“HeidiSQL”来定制权限,工作起来很有魅力。感谢您对不同用户合并权限的解释,我对此不感兴趣。很抱歉反应太晚,我无法理解为什么使用语句
    GRANT SELECT,INSERT…
    不起作用,所以我使用“HeidiSQL”来定制权限,并且非常有效。谢谢你对不同用户合并特权的解释,我对此并不介意。