Отправить электронную почту SQL Server с вложением без использования прав системного администратора

Я пытаюсь отправить электронное письмо, используя хранимую процедуру sp_send_dbmail SQL Server с вложением,

Моя учетная запись не имеет привилегий sysadmin, когда вложение отправляется как обычный пользователь SQL Server, я получаю эту ошибку

Не удалось олицетворить контекст безопасности подключения клиента. Для прикрепления файлов требуется встроенный клиентский вход

Есть ли способ отправить электронную почту SQL Server с вложением без использования привилегий sysadmin?


person Sooraj Bathery    schedule 06.02.2015    source источник


Ответы (2)


Что ж, если бы вы посмотрели документацию MSDN для sp_send_dbmail, она говорит:

Database Mail использует контекст безопасности Microsoft Windows текущего пользователя для управления доступом к файлам. Поэтому пользователи, прошедшие проверку подлинности SQL Server, не могут прикреплять файлы с помощью @file_attachments. Windows не позволяет SQL Server предоставлять учетные данные с удаленного компьютера на другой удаленный компьютер. Поэтому Database Mail может быть не в состоянии прикрепить файлы из общей сетевой папки в тех случаях, когда команда запускается с компьютера, отличного от компьютера, на котором работает SQL Server.

Из этого становится ясно, что вы должны быть подключены к SQL Server с использованием аутентификации WindowsIntegrated Security=SSPI; в строке подключения), чтобы иметь возможность прикреплять файлы к электронным письмам.

person marc_s    schedule 06.02.2015
comment
Я смотрю на ту же проблему и использую сопоставленные учетные данные. Я обнаружил, что это работает, если логин sql имеет привилегии системного администратора. но не без. - person Sir Swears-a-lot; 31.08.2018

Это решит проблему, вам просто нужно предоставить права системного администратора пользователю sql,
Команда: sp_addsrvrolemember 'User', 'sysadmin'

person Krushnakumar Joshi    schedule 26.12.2017