联系表密码安全

Contact Form password security

我创建了一个联系表单并有一个关于此表单的安全问题。

我已经对我的问题做了一些研究,但我想在犯任何错误之前仔细检查...

基本上,我在后面的代码中创建了联系表,如下所示。

在那里,我必须包括我的电子邮件地址和密码才能连接到 smtp 服务器。

我的证件恐怕很容易查到。

有人对如何保护此代码有建议吗? (还是我对这个解决方案完全错了?)

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

End Sub
Protected Sub Button_Click(ByVal sender As Object, ByVal e As EventArgs)
    Try
        If Page.IsValid Then
            Dim mailMessage As New MailMessage()
            mailMessage.From = New MailAddress("MYEMAILADRESS")
            mailMessage.To.Add("MYEMAILADRESS")
            mailMessage.Subject = txtSubject.Text

            mailMessage.Body = "<b>Sender Name : </b>" & txtName.Text & "<br/>" & "<b>Sender Email : </b>" & txtEmail.Text & "<br/>" & "<b>Phone </b>" & txtPhone.Text & "<br/>" & "<b>Comments : </b>" & txtComments.Text

            mailMessage.IsBodyHtml = True


            Dim smtpClient As New SmtpClient("smtp.gmail.com", 587)
            smtpClient.EnableSsl = True
            smtpClient.Credentials = New System.Net.NetworkCredential("MYEMAILADRESS", "PASSWORD")
            smtpClient.Send(mailMessage)

            Label.Text = "Thank you for contacting us"

            txtName.Enabled = False
            txtEmail.Enabled = False
            txtComments.Enabled = False
            txtSubject.Enabled = False
            txtPhone.Enabled = False
            Button.Enabled = False
        End If
    Catch ex As Exception
        'Log - Event Viewer or table
        Label.Text = "There is an unknown problem, please try later"
    End Try
End Sub

正如评论中提到的,您需要将许多这些值移动到配置文件中,包括您的密码。理想情况下,您将以加密格式存储凭据,这样如果有人窃取了您的配置文件,他们就无法访问您的电子邮件。

有关如何加密的说明,请参阅此答案:Encrypting Web.Config

详细说明如何 encrypt/decrypt 该文件有点超出了这个问题的范围,但我认为这是您继续前进的正确途径。