sql-server – SQL Server 2008 – 触发器是否以与登录/用户相同的权限运行?

前端之家收集整理的这篇文章主要介绍了sql-server – SQL Server 2008 – 触发器是否以与登录/用户相同的权限运行?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
只是一个简单的问题:

假设我在数据库中的表上放置了一个插入触发器.

如果通过登录/用户“foobar”将数据插入该表.

触发器是否以与“foobar”相同的访问权限/权限执行?

非常感谢.

解决方法

是.

您可以使用控制此行为

EXECUTE AS

create语句的子句,如explained here.

触发器的默认值是

EXECUTE AS CALLER

在哪里找到

CALLER

Specifies the statements inside the module are executed in the context of the
caller of the module. The user executing the module
must have appropriate permissions not only on the module itself,but
also on any database objects that are referenced by the module.
CALLER is the default for all modules except queues,and is the same as sql Server 2005 behavior.

猜你在找的MsSQL相关文章