欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL徹底禁止用戶執(zhí)行KILL的解決方法

 更新時(shí)間:2025年05月22日 08:30:53   作者:學(xué)亮編程手記  
在?MySQL?中,即使用戶只有?SELECT?權(quán)限,仍然可以執(zhí)行?SHOW?PROCESSLIST?和?KILL?命令,那么如何徹底禁止用戶執(zhí)行?KILL?本文給大家詳細(xì)介紹了MySQL徹底禁止用戶執(zhí)行KILL的解決方法,需要的朋友可以參考下

在 MySQL 中,即使用戶只有 SELECT 權(quán)限,仍然可以執(zhí)行 SHOW PROCESSLIST 和 KILL 命令。原因如下:

1. SHOW PROCESSLIST 不需要特殊權(quán)限

  • 默認(rèn)情況下,任何用戶都可以執(zhí)行 SHOW PROCESSLIST,即使只有 USAGE 權(quán)限(最低權(quán)限)。
  • 但如果 MySQL 啟用了 --skip-show-database 啟動(dòng)選項(xiàng),普通用戶可能看不到不屬于自己的進(jìn)程。

2. KILL 命令的權(quán)限依賴

  • KILL 命令的執(zhí)行權(quán)限取決于 PROCESS 或 SUPER 權(quán)限
    • 如果用戶有 PROCESS 權(quán)限,可以 KILL 自己的會(huì)話(即自己建立的連接)。
    • 如果用戶有 SUPER 權(quán)限,可以 KILL 任意會(huì)話(包括其他用戶的會(huì)話)。
  • 即使只授予 SELECT 權(quán)限,某些情況下用戶仍然可以 KILL 自己的會(huì)話
    • 在 MySQL 5.7+,如果用戶有 CONNECTION_ADMIN(或 SUPER 權(quán)限的替代),可能仍然可以 KILL 會(huì)話。
    • 在 MySQL 8.0+,引入了更細(xì)粒度的權(quán)限控制,但默認(rèn)情況下,某些操作仍然可能允許 KILL。

3. 為什么 SELECT 權(quán)限的用戶可以 KILL?

  • 可能的原因
    1. 用戶隱式擁有 PROCESS 權(quán)限(檢查 mysql.user 表確認(rèn))。
    2. MySQL 的版本差異(某些版本默認(rèn)允許 KILL 自己的會(huì)話)。
    3. 用戶屬于某個(gè)角色(MySQL 8.0+),該角色可能授予了 PROCESS 或 KILL 權(quán)限。

如何徹底禁止用戶執(zhí)行 KILL?

方法 1:明確撤銷 PROCESS 和 SUPER 權(quán)限

REVOKE PROCESS, SUPER ON *.* FROM 'query'@'%';
FLUSH PRIVILEGES;
  • 這樣用戶只能 SHOW PROCESSLIST,但無法 KILL 任何會(huì)話(包括自己的)。

方法 2:限制 SHOW PROCESSLIST(可選)

如果希望用戶完全看不到進(jìn)程列表:

REVOKE PROCESS ON *.* FROM 'query'@'%';
FLUSH PRIVILEGES;
  • 這樣 SHOW PROCESSLIST 僅顯示用戶自己的會(huì)話(而不是所有會(huì)話)。

方法 3:使用 MySQL 8.0+ 的細(xì)粒度權(quán)限

在 MySQL 8.0+,可以更精確控制:

-- 禁止 KILL 其他會(huì)話
REVOKE SYSTEM_USER, SYSTEM_VARIABLES_ADMIN, SESSION_VARIABLES_ADMIN ON *.* FROM 'query'@'%';

-- 確保沒有 PROCESS 權(quán)限
REVOKE PROCESS ON *.* FROM 'query'@'%';
FLUSH PRIVILEGES;

驗(yàn)證用戶的權(quán)限

-- 查看用戶權(quán)限
SHOW GRANTS FOR 'query'@'%';

-- 檢查 PROCESS 權(quán)限
SELECT * FROM mysql.user WHERE user='query'\G
  • 如果 Process_priv = 'Y',說明用戶有 PROCESS 權(quán)限,可以 KILL 自己的會(huì)話。

總結(jié)

  • SELECT 權(quán)限本身不會(huì)允許 KILL,但 PROCESS 權(quán)限會(huì)。
  • 要禁止 KILL,必須明確撤銷 PROCESS 和 SUPER 權(quán)限
  • MySQL 8.0+ 提供了更細(xì)粒度的權(quán)限控制,可以更嚴(yán)格限制 KILL 操作。

如果你的 query 用戶仍然可以 KILL,請(qǐng)檢查其完整權(quán)限(可能有隱藏的 PROCESS 或角色權(quán)限)。

以上就是MySQL徹底禁止用戶執(zhí)行KILL的解決方法的詳細(xì)內(nèi)容,更多關(guān)于MySQL禁止用戶執(zhí)行KILL的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MySQL性能優(yōu)化之Open_Table配置參數(shù)的合理配置建議

    MySQL性能優(yōu)化之Open_Table配置參數(shù)的合理配置建議

    這篇文章主要介紹了MySQL性能優(yōu)化之Open_Table配置參數(shù)的合理配置建議,在MySQL數(shù)據(jù)庫(kù)中,Opened_tables表示打開過的表數(shù)量,需要的朋友可以參考下
    2014-07-07
  • MySql 空間索引的實(shí)現(xiàn)

    MySql 空間索引的實(shí)現(xiàn)

    MySQL空間索引是一種用于優(yōu)化地理空間數(shù)據(jù)查詢的數(shù)據(jù)結(jié)構(gòu),通過為幾何數(shù)據(jù)類型創(chuàng)建空間索引,可以高效地對(duì)空間數(shù)據(jù)進(jìn)行查詢和操作,感興趣的可以了解一下
    2024-11-11
  • mysql數(shù)據(jù)庫(kù)分表分庫(kù)的策略

    mysql數(shù)據(jù)庫(kù)分表分庫(kù)的策略

    這篇文章主要介紹了mysql數(shù)據(jù)庫(kù)分表分庫(kù)的策略希望我們的整理能給你提供到幫助。
    2017-11-11
  • ERROR 1862 (HY000): Your password has expired. To log in you must change it using a .....

    ERROR 1862 (HY000): Your password has expired. To log in you

    當(dāng)你在安裝 MySQL過程中,通過mysqld --initialize 初始化 mysql 操作后,生成臨時(shí)密碼后,沒有直接進(jìn)行 MySQL連接,中途重啟服務(wù)或者重啟機(jī)器等,導(dǎo)致密碼失效問題,怎么處理呢,感興趣的朋友一起看看吧
    2019-11-11
  • MySQL兩種刪除用戶語(yǔ)句的區(qū)別(delete user和drop user)

    MySQL兩種刪除用戶語(yǔ)句的區(qū)別(delete user和drop user)

    這篇文章主要介紹了MySQL兩種刪除用戶語(yǔ)句的區(qū)別(delete user和drop user),幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2020-11-11
  • 想取消錯(cuò)誤的mysql命令怎么辦?

    想取消錯(cuò)誤的mysql命令怎么辦?

    今天小編就為大家分享一篇關(guān)于想取消錯(cuò)誤的mysql命令怎么辦?,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • MySQL約束超詳解

    MySQL約束超詳解

    這篇文章主要介紹了MySQL約束包括非空約束、唯一約束、主鍵約束、外鍵約束,需要的朋友可以具體參考下面文章內(nèi)容
    2021-09-09
  • 記一次mysql字符串末尾空白丟失的排查

    記一次mysql字符串末尾空白丟失的排查

    這篇文章主要介紹了記一次mysql字符串末尾空白丟失的排查的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • MSQL中DATETIME或TIMESTAMP的區(qū)別小結(jié)

    MSQL中DATETIME或TIMESTAMP的區(qū)別小結(jié)

    MySQL中的?DATETIME?和?TIMESTAMP?類型都用于存儲(chǔ)日期和時(shí)間信息,本文主要介紹了MSQL中DATETIME或TIMESTAMP的區(qū)別小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • Mysql的timeout以及python重連方式

    Mysql的timeout以及python重連方式

    這篇文章主要介紹了Mysql的timeout以及python重連方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07

最新評(píng)論