我遇到了以下问题:有一个用户必须执行存储过程(spTest).在spTest的主体中调用sp_trace_generateevent. sp_trace_generateevent需要更改跟踪权限,我不希望用户拥有它.所以我希望用户能够执行spTest.我怎样才能做到这一点?
解决方法
尝试这个:
EXECUTE AS user = 'special_user' EXECUTE YourProcerdure REVERT
看到这些:
Understanding Context Switching<<<<<<<<<<<<<<
Understanding Execution Context
EXECUTE AS Clause (Transact-SQL)
EXECUTE AS (Transact-SQL)