3
我想創建一個有權創建和刪除其他用戶的MySQL用戶,但是會阻止我自己的(超級用戶)帳戶被刪除或修改。如何保護MySQL用戶不被刪除和修改?
用戶似乎需要CREATE USER
才能夠管理用戶,這似乎允許刪除所有帳戶。
目標是提供MySQL作爲一種服務,可以做一些用戶管理,同時保持管理用戶不受用戶的限制。
編輯:用戶將使用CLI mysql客戶端或第三方數據庫工具直接連接到MySQL。當然這個問題可以通過爲用戶提供一個自定義系統來完成用戶管理並在那裏進行自定義訪問控制來消除,但我更願意直接訪問數據庫。
在你的場景中,MySQL是直接訪問還是通過某種網站/ API訪問? –
如果您在服務器和應用程序之間使用任何層(例如jdbc驅動程序),則可以截獲查詢並阻止任何刪除用戶的嘗試。但是由於您允許用戶通過mysql客戶端連接,我認爲您可以做的最好的做法是定期檢查您的用戶是否被刪除並自動重新創建。但我仍然認爲,如果向最終用戶授予此權限是一個好主意(可能不是這樣),您應該三思。 – Leo
@Leo:我不介意在每次需要時重新創建用戶,如果這不意味着取消DB,並且每次使用--skip-grant-tables臨時重新啓動它。 – Maarten