Это не обычная функция, главным образом потому, что в большинстве случаев это не подходящее место для этой системы безопасности. Если бы вы могли предоставить более подробную информацию о точной атаке, от которой вы пытаетесь защищаться, возможно, существует более подходящая система безопасности, чтобы выполнить это требование.
Обычно вы хотите ограничить конкретным пользователем на основе реализации списка контроля доступа, который диктует ваше приложение. Есть случаи, когда вы хотите, чтобы два приложения совместно использовали одни и те же данные, и вы хотите ограничить влияние компрометации одного из приложений. В этом случае вы можете разделить его и дать 1 приложению доступ на чтение к базе данных, в то время как у другого есть запись или чтение / запись. Используя собственный контроль доступа к базам данных, можно безопасно передавать информацию между приложениями. Основная угроза, от которой нужно защищаться, заключается в том, что если 1 приложение скомпрометировано из-за такой уязвимости, как SQL-инъекция , обе базы данных также погибнут от атаки.
Существует также sepgsql , который также делает это для PostgreSQL. Эта защищенная система может использоваться для лучшего разделения приложений с некоторыми зависимыми данными, но это очень необычное требование программного обеспечения. В целом, этой защищенной системы следует избегать в пользу других, более распространенных и проверенных систем.