Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我目前正在构建一个数据库,我偶尔会为各种功能(如审计表)使用触发器。
最近我意识到我可以简化以前PHP使用触发器进行的重复过程。但是,它需要使用DELETE. 我通常会尝试将用户的能力限制为基本命令,例如INSERT.
PHP
DELETE
INSERT
也就是说,我很好奇触发器是否受用户限制。例如,DELETE即使用户被限制为使用该命令执行显式查询,触发器是否可以使用?
从 PHP 脚本对数据库进行 SQL 查询时,没有任何限制。数据库的 root/admin 可以直接从 MySQL 执行的任何操作都可以从 PHP 脚本触发。
这是因为为了从 PHP 脚本建立到该数据库的连接,您需要安全的登录信息。希望只有 root/admin 用户可以访问该数据库的主要帐户信息。这种假定的安全预防措施就是为什么这些来自 PHP 的远程触发器被视为来自 root 用户的命令并且没有任何限制。