データベースメールを送信しようとしていますが、取得していEXECUTE permission denied on the object 'sp_send_dbmail' database 'msdb', schema 'dbo'.
ます。私が実行しているコードは次のとおりです:
SELECT SUSER_NAME(), USER_NAME();
Create USER kyle_temp FOR LOGIN Foo
EXECUTE AS USER = 'kyle_temp';
SELECT SUSER_NAME(), USER_NAME();
EXEC msdb.dbo.sp_send_dbmail @profile_name = 'Mail Profile',
@recipients = 'test@test.com',
@subject = 'Test',
@body = 'Test'
REVERT;
DROP USER kyle_temp
Fooログインは、msdbでFooユーザーにマッピングされていることを示しています。msdbでfooユーザーを見ると、 "DatabaseMailUserRole"がオンになっていて、dboでExecuteが実行されていることがわかりsp_send_dbmail
ます。
何が欠けていますか?