pg中创建函数时可以指定权限检测,有两个可选参数:SECURITY INVOKER和SECURITY DEFINER。 SECURITY INVOKER:表示要用调用该函数的用户的特权来执行它。这是默认值。 SECURITY DEFINER:指定要用拥有该函数的用户的特权来执行该函数。 比如我们使用普通用户创建了一个调用者权限的函数,那么当超级用户调用这个函数时,就会以超级用户的权限来执行,这就会导致很大的安全隐患。 例子: 我们现在数据库中有两个用户:超级用户postgres和普通用户bill。 接着我们用普通用户创建一个表,并在这个普通用户的表上创建触发器。当超级用户操作这个表,并触发了触