DBA授予选项和权限问题

问题描述 投票:0回答:1

在MySQL数据库中,如果DBA向用户1授予select权限并带有授予选项,则该用户1向用户2授予select访问权限,DBA可以撤销用户2但不影响用户1权限吗?

我尝试在谷歌中搜索答案,但很难找到答案

mysql database database-administration sql-grant
1个回答
0
投票

在MySQL中,当使用WITH GRANT OPTION授予用户权限时 子句,这意味着用户不仅拥有自己的权限,而且还可以 将该权限授予其他用户。但是,具有WITH GRANT的用户 如果其他人没有 OPTION 权限,则 OPTION 无法撤销他们的特权 给自己特权。

所以,在你的场景中

DBA 使用WITH GRANT OPTION 向用户1 授予SELECT 权限。用户 1 授予 SELECT 权限 用户2。现在,如果 DBA 想要撤销 user2 的 SELECT 权限,但是 不影响user1的权限,DBA可以这样做而不影响user1的权限 允许。关键是DBA作为超级用户,拥有 有权撤销任何用户(包括 user2)的权限,无论 user1是否授予权限。

要撤销user2的权限,DBA可以使用以下SQL 命令:

从 user2 中撤销对数据库名称.* 的选择;

这将撤销 user2 对指定数据库的 SELECT 权限,以及 user1 的 权限将不受影响。

但是,请记住,user1 仍然可以再次向 user2 授予权限 如果 DBA 没有明确限制他们这样做。

© www.soinside.com 2019 - 2024. All rights reserved.