电子邮件助手身份验证

本文关键字:身份验证 电子邮件 | 更新日期: 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存储密码的散列,而不是密码本身。