电子邮件助手身份验证
本文关键字:身份验证 电子邮件 | 更新日期: 2023-09-27 18:25:19
我正在创建一个发送电子邮件的电子邮件助手,这一切都很好,除了我需要传递当前用户的用户名和密码。
有什么办法可以做到这一点吗?
我使用了Environment.UserName;
,这可以正确地获得用户名,但我不知道如何获得密码。
以下是我为电子邮件助手所做的工作。
public void SendEmail(int port, string host, string displayName, string subject, string body, string addressFrom, string addressTo, string password, string username)
{
MailMessage messageToSend = new MailMessage();
messageToSend .Subject = subject;
messageToSend .Body = body;
messageToSend .From = new MailAddress(addressFrom, displayName);
messageToSend .To.Add(addressTo);
messageToSend .Priority = MailPriority.High;
messageToSend .IsBodyHtml = true;
SmtpClient SMTPclient = new SmtpClient(Host, Port);
SMTPclient .EnableSsl = false;
SMTPclient.Credentials = new NetworkCredential(Username, Password);
SMTPclient.Send(message);
}
您无法获得密码,但实际上您不需要密码,您需要当前用户的凭据,您可以获得并分配给您的SMTP客户端,如下所示
SMTPclient.Credentials = CredentialCache.DefaultNetworkCredentials;
无法检索当前记录的用户密码
Windows存储密码的散列,而不是密码本身。