Это определенно нарушение принципа наименьших привилегий. Давайте вернемся к определению :
В области информационной безопасности, информатики и других областях
принцип минимальных привилегий, также известный как принцип минимальных
привилегия или просто минимальная привилегия, требует, чтобы в конкретном
уровень абстракции вычислительной среды, каждый модуль (такой как
процесс, пользователь или программа на основе слоя мы
учитывая) должен иметь возможность доступа только к такой информации и
ресурсы, которые необходимы для его законного назначения.
В вашем примере с Wordpress публичный пользователь получает данные из базы данных с помощью учетной записи SQL, которая также может изменять или удалять эти данные. «Наименьшая привилегия» для этого пользователя не будет включать доступ к изменению этих данных, независимо от того, находятся ли они непосредственно в таблице с помощью хранимой процедуры. Это определенно не соответствует «доступу только к такой информации и ресурсам, которые необходимы для ее законного назначения» .
Риск в среде SQL - это, прежде всего, внедрение SQL. Один маленький недостаток: если у этого публичного аккаунта есть права на нанесение ущерба, у вас возникнут всевозможные проблемы. Да, входные данные должны быть проверены, да, запросы должны быть параметризованы, но это еще один дополнительный уровень защиты, который дает вам дополнительную страховку.
Я говорю об этом конкретно в OWASP Top 10 для разработчиков .NET, часть 1: Инъекция .