mysql - 是否有一个数据库工具可以显示我有权执行的 sql 命令列表?

标签 mysql sql database-security database

我和HeidiSQL的开发者谈过这个问题,他告诉我可以通过sql的“show grants”命令来查询它,但我不明白它的结果集。

show grants // I execute query here

GRANT USAGE ON . TO 'fsdb1user1'@'%' IDENTIFIED BY PASSWORD 'something'

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES ON fsdb1.* TO 'fsdb1user1'@'%'

mysql文档说

SHOW GRANTS displays only the privileges granted explicitly to the named account. Other privileges might be available to the account, but they are not displayed. For example, if an anonymous account exists, the named account might be able to use its privileges, but SHOW GRANTS will not display them.

我认为某处可能有一些软件尝试进行一些查询并以这种方式检查授权。

最佳答案

看来该用户被允许执行很多操作。这实际上是所有这些的一个很好的引用http://dev.mysql.com/doc/refman/5.1/en/grant.html#grant-privileges .

相关用户可以运行 SELECT、UPDATE 和 DELETE 查询。他们可以创建表和数据库。他们可以删除表、数据库和 View 。他们可以创建和更改索引。他们可以更改表结构。他们可以使用创建临时表。最后,他们可以锁定他们拥有 SELECT 权限的表。在这种情况下,用户可以从任何主机对此数据库 (fsdb1) 中的任何表执行此操作。

关于mysql - 是否有一个数据库工具可以显示我有权执行的 sql 命令列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8595672/

相关文章:

mysql - yii2 和 select2 标签

mysql - MySQL 哈希索引的良好文档/引用?

database - 如果我的服务器被盗,PostgreSQL 数据库的安全性如何?

mysql - SQL双数据库安全

python - 如何使用或使用 Django 的模型过滤系统?

orm - 学说 2 orm 和 sql 注入(inject)

php - 加入 codeigniter 返回多个值

PHP MySQL 网站到外部 SQL 系统集成

mysql - SQL检查不同字段中的重复值

php - 查询效率