SharePoint RunWithElevatedPrivileges Example
April 13, 2009 Leave a comment
The following example sends an email using elevated privileges. This will elevate the privileges to execute using the service account.
The SPSecurity.RunWithElevatedPrivileges method taks a delegate method as its argument and executes that code with the service account.
SPSecurity.RunWithElevatedPrivileges(
delegate()
{
// Your code needing elevated permissions goes here.
}
)
Example:
public void SendEmail(Email email)
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
SmtpClient mail = new SmtpClient(); MailMessage message = new MailMessage();
message.From = new MailAddress(this.SenderAddress);
message.To.Add(email.To);
message.IsBodyHtml = email.IsHtml;
if (!string.IsNullOrEmpty(email.Cc))
message.CC.Add(email.Cc);
if (!string.IsNullOrEmpty(email.Bcc))
message.Bcc.Add(email.Bcc);
if (!string.IsNullOrEmpty(this.ReplyToAddress))
message.ReplyTo = new MailAddress(this.ReplyToAddress);
if (!string.IsNullOrEmpty(email.Subject))
message.Subject = email.Subject;
if (!string.IsNullOrEmpty(email.Body))
message.Body = email.Body;
mail.Host = this.CentralAdminOutboundServerAddress; mail.Send(message);
});
}
Recent Comments