相关疑难解决方法(0)

PostgreSQL - 只允许DB用户调用函数

目前我正在使用PostgreSQL作为我的应用程序.由于我试图将包含事务的每个SQL(即插入,更新,删除)放在一个函数中,我偶然发现了这个问题:

是否有可能只允许数据库用户调用函数和选择语句,而他无法调用包含事务的SQL语句?"呼叫功能"是指任何功能.无论它是否包含交易.

我已经尝试创建一个只能调用函数和Select-Statements的用户.但是在调用包含事务的函数时,我总是会遇到错误.据我所知,如果他调用使用insert,update或delete语句的函数,则dbuser需要写权限.

我错过了什么吗?这种情况真的不可能吗?安全方面,这将是非常好的,因为你几乎首先防止SQL注入.

postgresql stored-procedures sql-injection transactions user-permissions

18
推荐指数
1
解决办法
1万
查看次数