2015-09-29 3 views
1

Я создал контактную форму и предоставил ценную информацию для этой формы.Контактный формуляр пароль безопасность

Я сделал некоторые исследования для моего вопроса уже, но я хочу, чтобы перепроверить, прежде чем я делать какую-либо ошибку ...

В принципе, я создал свою контактную форму в моем коде позади следующим образом.

В этом случае я должен был бы указать адрес электронной почты и пароль для подключения к серверу 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 
+0

Это разорванная сторона, это никогда не доходит до ваших пользователей. Кроме того, подумайте о переносе этого файла в файл конфигурации вместо сохранения значений в коде. –

+0

@WiktorZychla Хотя то, что вы говорите, верно, что это серверная сторона, я определенно мог понять, почему кому-то будет неудобно хранить важные пароли в открытом тексте. – Gray

+0

@Gray: уверен, что шифрование файла конфигурации будет моей следующей рекомендацией, как только OP так или иначе это прокомментирует. Я не уверен, что они знают, что их учетные данные безопасны для пользователей. –

ответ

1

Как было упоминалась в комментариях, вы хотите переместить много из этих значений в файл конфигурации, в том числе и ваш пароль. В идеале вы будете хранить учетные данные в зашифрованном формате, чтобы, если кто-то украл ваш файл конфигурации, они не смогут получить доступ к вашей электронной почте.

Смотрите этот ответ для указания, как зашифровать его: Encrypting Web.Config

Детализация как зашифровать/расшифровать файл является немного выходит за рамки этого вопроса, но я думаю, что это правильный путь для вас пойти вниз.

+1

спасибо за ваш ответ, я сделаю это сейчас – Felix

Смежные вопросы