2012-07-26 107 views
5

我有一個數據庫用戶,它是數據庫的所有者。應用程序要求是使用sql server的數據庫郵件發送郵件。如何向sql server用戶授予sendmail權限?

有沒有什麼辦法可以給該用戶添加授權只發送郵件權限?

我有一個名爲testuser的有服務器角色公共用戶,是1個數據庫的db_owner。請告訴我,我不需要給該用戶提供sysadmin serverroles。

回答

7

請嘗試以下2個選項。

USE msdb; 
--add our user 
CREATE USER ClarkKent FOR LOGIN ClarkKent; 
--give this user rights to use dbmail 
exec sp_addrolemember 'DatabaseMailUserRole', 'ClarkKent' 
現在,如果我們知道ClarkKent從Windows組得到他的授權

,那麼您添加Windows組作爲一個用戶,並添加組將相同的作用;

USE msdb; 
--add our user via a group we know he is in 
CREATE USER 'mydomain\BusinessGroup' FOR LOGIN 'mydomain\BusinessGroup'; 
--give this GROUP rights to use dbmail 
exec sp_addrolemember 'DatabaseMailUserRole', 'mydomain\BusinessGroup' 
+0

突出顯示文本並使用「代碼示例」圖標格式化文本代碼。代碼示例圖標看起來像'{}'。 – 2012-07-26 10:09:36

+0

我試過這個但仍然無法使用數據庫郵件服務。 – 2012-07-26 10:54:51

+0

我得到以下消息** EXECUTE權限在對象'sysmail_help_profile_sp',數據庫'msdb',架構'dbo'上被拒絕。 (.Net SqlClient數據提供程序)** – 2012-07-26 10:55:58

0

enter image description here

你需要MSDB數據庫添加「DatabaseMailUserRole中」用戶