【发布时间】:2009-02-09 22:23:59
【问题描述】:
有没有一种方法可以让我的数据库中的用户访问执行msdb.dbo.sp_send_dbmail,而无需将它们添加到 MSDB 数据库和 DatabaseMailUserRole?
我试过了:
ALTER PROCEDURE [dbo].[_TestSendMail]
(
@To NVARCHAR(1000),
@Subject NVARCHAR(100),
@Body NVARCHAR(MAX)
)
WITH EXECUTE AS OWNER
AS
BEGIN
EXEC msdb.dbo.sp_send_dbmail @profile_name = N'myProfile',
@recipients = @To, @subject = @Subject, @body = @Body
END
但我收到此错误:
The EXECUTE permission was denied on the object 'sp_send_dbmail', database 'msdb', schema 'dbo'.
谢谢!
【问题讨论】:
标签: sql-server-2005 stored-procedures permissions