嗨,我正在使用我的Windows基础应用程序发送 以下代码
Mail.Subject = "test email"
Mail.To.Add("to@xyz.com")
Mail.From = New MailAddress("from@abc.com")
Mail.Body = "Hello"
Dim attachment As System.Net.Mail.Attachment
attachment = New System.Net.Mail.Attachment("AttachPath")
Mail.Attachments.Add(attachment)
Dim SMTP As New SmtpClient("smtp.abc.com")
SMTP.EnableSsl = True
SMTP.Credentials = New System.Net.NetworkCredential("xyz@.abc.com", "password")
SMTP.Port = 25
SMTP.Send(Mail)
但我不想使用
SMTP.Credentials = New System.Net.NetworkCredential("xyz@.abc.com", "password")
还有Interpub
任何人都可以有这个解决方案
答案 0 :(得分:1)
您也可以在My.Settings区域设置它,然后在需要时引用它,但不是因为您可以打开它并自由查看...无论哪种方式,您仍然必须提供您的凭据以某种方式保护邮件服务器,以便服务器在登录时对您进行身份验证。有很多方法可以做到这一点,例如你可以:用PC上的某个地方写一个随机文本文件或从数据库中提取它们。
答案 1 :(得分:0)
为确保您的凭据,您可以做的最好的事情就是将它们隐藏起来。一个典型的最终用户可能永远不会考虑使用像ILSpy这样的工具来窃取你的密码,所以不要担心它们。其他技巧涉及对用户名/密码进行模糊处理,因此任何人都无法确定代码中的用户名/密码来自何处。
如果您所做的只是上传文件,我的最终建议是使用不需要身份验证的其他技术。例如,您可以设置一个FTP / SFTP服务器,允许对文件夹“崩溃报告”进行匿名读/写访问(我只是假设您正在做的事情)。我相信有些服务器甚至允许创建文件,但拒绝修改/删除文件。