Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

अनुमतियों को सीमित करते हुए sp_send_dbmail कैसे निष्पादित करें

आपका दृष्टिकोण ठीक है, लेकिन आपकी रैपर खरीद msdb डेटाबेस में होनी चाहिए। फिर, आप "EXEC msdb.dbo._TestSendMail" को निष्पादित करते हैं।

यह अभी भी एमएसडीबी में dbo._TestSendMail पर अनुमतियों के मुद्दे को छोड़ देता है। लेकिन सार्वजनिक/निष्पादन पर्याप्त होगा:यह केवल आपके लिए आवश्यक 3 पैरामीटर को उजागर करता है।

यदि संदेह है, तो एन्क्रिप्शन के साथ जोड़ें। यह कोड देखने के sysadmin अधिकारों के बिना किसी को भी रोकने के लिए पर्याप्त है

USE msdb
GO
CREATE PROCEDURE [dbo].[_TestSendMail]
(
  @To NVARCHAR(1000),
  @Subject NVARCHAR(100),
  @Body NVARCHAR(MAX)
)
-- not needec WITH EXECUTE AS OWNER
AS 
    BEGIN
        EXEC dbo.sp_send_dbmail @profile_name = N'myProfile',
            @recipients = @To, @subject = @Subject, @body = @Body
    END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. टेबल-वैल्यूड-फ़ंक्शन के अंदर सीटीई के लिए मैक्सरेकर्सन विकल्प कैसे सेट करें?

  2. SQL सर्वर क्वेरी को MySQL में बदलें

  3. SQL IF कथन को अनदेखा किया जा रहा है

  4. लिनक्स पर SQL सर्वर कैसे स्थापित करें

  5. तालिका संशोधित करें:'नल की अनुमति दें' विशेषता को शून्य से शून्य की अनुमति देने के लिए कैसे बदलें?